su.class.cs244a



Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Welcome to CS244a
Date: Tue, 07 Jan 2003 11:51:57 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1041969116 3915 171.64.74.37 (7 Jan 2003 19:51:56 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3631

Welcome to the CS244a Newsgroup!

You are welcome to post questions related to CS244a
to this newsgroup. In fact, we prefer that you post
questions here instead of sending email.

Each day, a TA is on duty and will answer questions posted
to this group. You can find out who is on duty each day
by looking at the class web page.

The archieve of last years cs244a is online at:

    http://www.stanford.edu/class/cs244a/news2002.html

Please have a look, maybe your questions has been answered
there already.

    Your friendly CS244a TA Team

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Problem Set One Posted, Misc Announcements
Date: Wed, 8 Jan 2003 03:27:23 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: manzanares.stanford.edu
X-Trace: news.Stanford.EDU 1041996443 21176 171.64.74.40 (8 Jan 2003 03:27:23 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-17.7.x (i686))
Xref: shelby.stanford.edu su.class.cs244a:3632

(1) Problem set one has been posted on the web page under "schedule, handouts
    & homeworks"

(2) A number of students have tried to register for a TA.  Unfortunately, this
    is broken at the moment.  I'll send out an e-mail in due course when this
    is ready.  (Anyone who's tried to sign up already will have to do so
    again, sorry).

(3) Don't forget to sign up on EEClass at eeclass.stanford.edu

  Your friendly cs244a TA Team
.

Path: shelby.stanford.edu!elaine2.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: TA assignments
Date: Wed, 8 Jan 2003 08:25:44 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine2.stanford.edu
X-Trace: news.Stanford.EDU 1042014344 159 171.64.15.67 (8 Jan 2003 08:25:44 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3633

The TA assignment process appears to be working now; please go ahead and click
on the "Your TA" link on the main course page to make your assignment.  (This
includes anyone who tried submitting earlier today or this evening).

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set One Posted, Misc Announcements
Date: Wed, 8 Jan 2003 17:30:32 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042047032 13232 171.64.15.112 (8 Jan 2003 17:30:32 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3634


>I went to the http://eeclass.stanford.edu website but
>could not find out how to register. Could you tell me
>how to do that?

Click on "CCNet Courses" to the left, select "Computer Science"
and then "CS244a" from the resulting course lists, and click on the
"Students" link on the left.  This takes you to the usual login page,
where you can also register if you're logging in for the first time.

.

Path: shelby.stanford.edu!not-for-mail
From: Duggan John Dieterly 
Newsgroups: su.class.cs244a
Subject: birthday probability
Date: Wed, 8 Jan 2003 22:42:40 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga9.stanford.edu
X-Trace: news.Stanford.EDU 1042065760 24956 171.64.15.139 (8 Jan 2003 22:42:40 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3635

i'm an hcp student who watches the class via internet.  i did not hear
the answer to the question about the probability that it is somebody's 
birthday.  could you please tell me what the answer is and how it is 
calculated?  thank you.

-dek
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: birthday probability
Date: Wed, 8 Jan 2003 22:55:19 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1042066519 25585 171.64.15.115 (8 Jan 2003 22:55:19 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3636

Duggan John Dieterly  writes:

>i'm an hcp student who watches the class via internet.  i did not hear
>the answer to the question about the probability that it is somebody's 
>birthday.  could you please tell me what the answer is and how it is 
>calculated?  thank you.

That's question one on the first homework!

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: ps1 1
Date: Wed, 8 Jan 2003 17:31:30 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042075892 1761 171.64.15.100 (9 Jan 2003 01:31:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3637

In question 1c, do we assume each year there're N students?
In question 1d, do we assume class starts on the same date each year?
thanks.

Eric



.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: ps1 1
Date: Thu, 9 Jan 2003 01:56:03 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1042077363 2812 171.64.15.115 (9 Jan 2003 01:56:03 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3638


>In question 1c, do we assume each year there're N students?
>In question 1d, do we assume class starts on the same date each year?
>thanks.

Yes, and yes.  And you can ignore leap years too :-)

.

Path: shelby.stanford.edu!myth5.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: ftpcopy
Date: Wed, 8 Jan 2003 21:24:03 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: myth5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042089846 9477 171.64.15.18 (9 Jan 2003 05:24:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3639

Should we worry about 64-bit IP addressess (IPv6)?

Rhea

.

Path: shelby.stanford.edu!not-for-mail
From: Duggan John Dieterly 
Newsgroups: su.class.cs244a
Subject: birthday probability
Date: Thu, 9 Jan 2003 20:10:54 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga9.stanford.edu
X-Trace: news.Stanford.EDU 1042143054 23054 171.64.15.139 (9 Jan 2003 20:10:54 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3640

In class, the people attending in person were given the answer to the 
probability that it is somebody's birthday.  The answer is inaudible 
on the video.  I would like to know the answer that was given in class
so that I may participate fully in the knowledge sharing.  Thank you.
.

Path: shelby.stanford.edu!elaine27.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: ftpcopy
Date: Thu, 9 Jan 2003 20:20:46 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine27.stanford.edu
X-Trace: news.Stanford.EDU 1042143646 23551 171.64.15.102 (9 Jan 2003 20:20:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3641

>Should we worry about 64-bit IP addressess (IPv6)?

Nope.

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: birthday probability
Date: Thu, 9 Jan 2003 15:10:42 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042153845 29414 171.64.15.85 (9 Jan 2003 23:10:45 GMT)
X-Complaints-To: 
To: Duggan John Dieterly 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3642

Yeah, that is one major problem with being an SCPD student.
I really would encourage professors to repeat or at least
summarize statements made by the students in class.
I've spent too much time over the last few quarters replaying
the video in attempt to understand some garbled statement by
a student.

- Erik

On Thu, 9 Jan 2003, Duggan John Dieterly wrote:

> In class, the people attending in person were given the answer to the
> probability that it is somebody's birthday.  The answer is inaudible
> on the video.  I would like to know the answer that was given in class
> so that I may participate fully in the knowledge sharing.  Thank you.
>

.

Path: shelby.stanford.edu!not-for-mail
From: Duggan John Dieterly 
Newsgroups: su.class.cs244a
Subject: Re: birthday probability
Date: Thu, 9 Jan 2003 23:56:27 +0000 (UTC)
Lines: 27
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga9.stanford.edu
X-Trace: news.Stanford.EDU 1042156587 833 171.64.15.139 (9 Jan 2003 23:56:27 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3643

This is a huge problem with being an scpd student.  I have been 
pulling my hair out on some occasions trying to see/hear what the  
heck is going on in class.  Then when you ask the TA or Prof, they
tend to treat you like a moron.  Arrggggggg!!!!  I spend a good deal
of time on this deciphering.  Sometimes it's like trying to glean meaning 
from ancient texts that are 2X2 inches scratched in the sand.  Okay, 
I feel beter after that venting.


Erik Damian Weathers  wrote:
> Yeah, that is one major problem with being an SCPD student.
> I really would encourage professors to repeat or at least
> summarize statements made by the students in class.
> I've spent too much time over the last few quarters replaying
> the video in attempt to understand some garbled statement by
> a student.

> - Erik

> On Thu, 9 Jan 2003, Duggan John Dieterly wrote:

>> In class, the people attending in person were given the answer to the
>> probability that it is somebody's birthday.  The answer is inaudible
>> on the video.  I would like to know the answer that was given in class
>> so that I may participate fully in the knowledge sharing.  Thank you.
>>

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Office hours start 30 minutes late today...
Date: Fri, 10 Jan 2003 01:15:05 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
X-Trace: news.Stanford.EDU 1042161305 3855 171.64.74.37 (10 Jan 2003 01:15:05 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-17.7.x (i686))
Xref: shelby.stanford.edu su.class.cs244a:3644

Office hours in Sweet hall will start 30 minutes late today - apologies if you have been waiting!

  Guido

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: echodemo
Date: Fri, 10 Jan 2003 01:42:09 +0000 (UTC)
Organization: Stanford University
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga22.stanford.edu
X-Trace: news.Stanford.EDU 1042162929 4961 171.64.15.152 (10 Jan 2003 01:42:09 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3645


I have compiled and run the echodemo program and it works fine (after
debugging) when
I am on epic/saga etc. Is there any reason when I run it on my home machine
that it should not work (it compiles  w/o error)?  The message is sent correctly 
but when I try to read
from the socket I get an error (returns -1). Does the echo server only send stuff
to the stanford.edu domain? When I try to communicate with an ftp server
(say transfer.stanford.edu) I can read from the socket just fine.
.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: echodemo
Date: Fri, 10 Jan 2003 01:56:23 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine4.stanford.edu
X-Trace: news.Stanford.EDU 1042163783 5419 171.64.15.69 (10 Jan 2003 01:56:23 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3646

 (David Seetapun) writes:

>I have compiled and run the echodemo program and it works fine (after
>debugging) when
>I am on epic/saga etc. Is there any reason when I run it on my home machine
>that it should not work (it compiles  w/o error)?  The message is sent correctly 
>but when I try to read
>from the socket I get an error (returns -1). Does the echo server only send stuff
>to the stanford.edu domain? When I try to communicate with an ftp server
>(say transfer.stanford.edu) I can read from the socket just fine.

What does errno (e.g. a call to perror) indicate?

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: echodemo
Date: Fri, 10 Jan 2003 02:04:23 +0000 (UTC)
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: colorado.stanford.edu
X-Trace: news.Stanford.EDU 1042164263 5581 171.64.74.34 (10 Jan 2003 02:04:23 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-17.7.x (i686))
Xref: shelby.stanford.edu su.class.cs244a:3647

David,

it should run fine everywhere. Where are you located?
It could be that your ISP filters TCP port 7.

Try:

  telnet klamath.stanford.edu 7

Does that work? Also we only guarantee that this software runs under Solaris if compiled with gcc.

  Guido



> I have compiled and run the echodemo program and it works fine (after
> debugging) when
> I am on epic/saga etc. Is there any reason when I run it on my home machine
> that it should not work (it compiles  w/o error)?  The message is sent correctly 
> but when I try to read
> from the socket I get an error (returns -1). Does the echo server only send stuff
> to the stanford.edu domain? When I try to communicate with an ftp server
> (say transfer.stanford.edu) I can read from the socket just fine.
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: echodemo
Date: Fri, 10 Jan 2003 02:06:36 +0000 (UTC)
Organization: Stanford University
Lines: 18
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga22.stanford.edu
X-Trace: news.Stanford.EDU 1042164396 5744 171.64.15.152 (10 Jan 2003 02:06:36 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3648


Connection reset by peer

In article 
  (Matthew Jonathan Holliman) writes:
>  (David Seetapun) writes:
> 
> >I have compiled and run the echodemo program and it works fine (after
> >debugging) when
> >I am on epic/saga etc. Is there any reason when I run it on my home machine
> >that it should not work (it compiles  w/o error)?  The message is sent correctly 
> >but when I try to read
> >from the socket I get an error (returns -1). Does the echo server only send stuff
> >to the stanford.edu domain? When I try to communicate with an ftp server
> >(say transfer.stanford.edu) I can read from the socket just fine.
> 
> What does errno (e.g. a call to perror) indicate?
> 
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: echodemo
Date: Fri, 10 Jan 2003 02:09:32 +0000 (UTC)
Organization: Stanford University
Lines: 35
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga22.stanford.edu
X-Trace: news.Stanford.EDU 1042164572 5849 171.64.15.152 (10 Jan 2003 02:09:32 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3649


Thanks for looking a this: I understand about the Solaris/gcc guarantees.

[adsl-63-193-5-243:~/ftpcopy] seetapun% telnet klamath.stanford.edu 7
Trying 171.64.74.58...
Connected to yuba.stanford.edu.
Escape character is '^]'.
Connection closed by foreign host.


In article 
 Guido Appenzeller  writes:
> David,
> 
> it should run fine everywhere. Where are you located?
> It could be that your ISP filters TCP port 7.
> 
> Try:
> 
>   telnet klamath.stanford.edu 7
> 
> Does that work? Also we only guarantee that this software runs under Solaris if compiled with gcc.
> 
>   Guido
> 
> 
> 
> > I have compiled and run the echodemo program and it works fine (after
> > debugging) when
> > I am on epic/saga etc. Is there any reason when I run it on my home machine
> > that it should not work (it compiles  w/o error)?  The message is sent correctly 
> > but when I try to read
> > from the socket I get an error (returns -1). Does the echo server only send stuff
> > to the stanford.edu domain? When I try to communicate with an ftp server
> > (say transfer.stanford.edu) I can read from the socket just fine.
.

Date: Thu, 09 Jan 2003 19:06:56 -0800
From: Matthew Jonathan Holliman 
Message-ID: 
To: 
Subject: CS244a: misc. announcements
Lines: 16
Newsgroups: su.class.cs244a
Organization: Stanford University Posting Gateway (mailtonews 1.3/0.42)
Path: shelby.stanford.edu!mail-to-news!elaine22.stanford.edu
Sender: 
X-Mail-Path: 
X-Original-Date: Thu, 9 Jan 2003 19:06:54 -0800 (PST)
X-Original-Message-ID: 
Xref: shelby.stanford.edu su.class.cs244a:3650


(1) Just a reminder to check last year's newsgroup postings for answers
    before posting/e-mailing questions.  You'll find a lot of useful
    information and clarifications in there.  You can access the archive
    by following the "FAQs" link from the main course homepage.

    Also, if you have a question that isn't answered by the existing archive,
    please just post it to the newsgroup unless there's a particular reason
    it must be answered privately!  Chances are that other people have a
    similar question.

(2) The slides for tomorrow's review session have been posted under
    the handouts page.

Thanks.
Matthew
.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS1 question 2
Date: Fri, 10 Jan 2003 03:18:07 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine22.stanford.edu
X-Trace: news.Stanford.EDU 1042168687 7863 171.64.15.87 (10 Jan 2003 03:18:07 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3651

>in PS1, Question2, (a), what do you mean by how much data can fit in the
>pipe ? I'm assuming the 'pipe' refers to the first pipe the user's bits
>start going in ? if so, I would think all the data would eventually fit
>into the pipe. Please clarify.

It basically means, how much outstanding data can you have on the line
(i.e. "in flight")?

.

Path: shelby.stanford.edu!not-for-mail
From: Nick McKeown 
Newsgroups: su.class.cs244a
Subject: Re: ftpcopy
Date: Thu, 09 Jan 2003 21:43:24 -0800
Organization: Stanford University
Lines: 7
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: mckeown-pbdsl1.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042177517 12405 171.66.211.98 (10 Jan 2003 05:45:17 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.61 [en] (WinNT; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3652


IPv6 addresses are 128-bits anyway ;-)

> 
> >Should we worry about 64-bit IP addressess (IPv6)?
> 
> Nope.
.

Path: shelby.stanford.edu!not-for-mail
From: Nick McKeown 
Newsgroups: su.class.cs244a
Subject: Re: birthday probability
Date: Thu, 09 Jan 2003 21:45:46 -0800
Organization: Stanford University
Lines: 11
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: mckeown-pbdsl1.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042177660 12405 171.66.211.98 (10 Jan 2003 05:47:40 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.61 [en] (WinNT; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3653


I will endeavor to repeat questions/answers. But I won't
always remember. Feel free to email me to remind me.

You should raise this problem with folks at SCPD/SITN. 
The room is supposed to be set up, and the microphones
arranged, so that questions/answers from students are
audible on tape. Clearly, something's wrong. I expect
they'd like to know.

- Nick
.

Path: shelby.stanford.edu!not-for-mail
From: "Bina Vasavda" 
Newsgroups: su.class.cs244a
Subject: Purify
Date: Thu, 9 Jan 2003 22:17:55 -0800
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: ev-01-hos4d.stanford.edu
X-Trace: news.Stanford.EDU 1042179474 13272 128.12.154.59 (10 Jan 2003 06:17:54 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3654

Hi, when I try to run echodemo.purify, I wait for a long time, and finally
get the following error. Any suggestions?
Thanks,
Bina

[echodemo.purify waiting for rtslave on
/tmp/echodemo.purify_16570_pure_cx_1199899173_17632.............
Giving up]
Purify: Couldn't connect to rtslave.


.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: PS #1 questions
Date: Thu, 9 Jan 2003 23:38:33 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042184319 15581 171.64.15.78 (10 Jan 2003 07:38:39 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3655

Q6(a):
1. can we assume that all packets are of the same size, L?
2. can we assume all inter-packets gap having the same lengths, g?
or the above two assumptions are irrelevant to solving the problem?

Q9(b):
is there any buffer size constraint on this switch? or we are free to
specify a particular buffer size which works with our output link rate?

thanks!

Tan Gao
-------------------


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!ishastri
From: Ishaan S Shastri 
Newsgroups: su.class.cs244a
Subject: prob 5a/b
Date: Thu, 9 Jan 2003 23:58:53 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine31.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042185534 16254 171.64.15.106 (10 Jan 2003 07:58:54 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3656

Hi,

In question 5, since processing time within the router is negligible, what
does the number of packets in the buffer have to do with anything?

Doesn't this imply that the packets are effectively sent immediately on
their way after reaching a router, and as such, doesn't this imply that a)
and b) amount to the same question?

Thanks!
Ishaan

.

Path: shelby.stanford.edu!elaine21.Stanford.EDU!btsang
From: Brian Hing-Kit Tsang 
Newsgroups: su.class.cs244a
Subject: PS1, Q7
Date: Fri, 10 Jan 2003 01:50:58 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042192263 20431 171.64.15.86 (10 Jan 2003 09:51:03 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3657

For the store and forward model, do we assume that the buffer does not
free the memory associated with a packet until it sends out the last bit
of that packet?

.

Path: shelby.stanford.edu!not-for-mail
From: Steve Garrity 
Newsgroups: su.class.cs244a
Subject: PS1 Q9
Date: Fri, 10 Jan 2003 02:14:07 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: garrity2.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042193709 21466 128.12.74.77 (10 Jan 2003 10:15:09 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3658

For question 9c, don't we need an output link speed?  Without it, if you
defined it to be equal to that in 9b, then no packet would ever hit the
buffer...  Or am I missing something?  -Steve

.

Date: Fri, 10 Jan 2003 11:59:59 -0800
From: Matthew Jonathan Holliman 
Message-ID: 
To: 
Subject: CS244a: discussion section today
Lines: 11
Newsgroups: su.class.cs244a
Organization: Stanford University Posting Gateway (mailtonews 1.3/0.42)
Path: shelby.stanford.edu!mail-to-news!elaine40.stanford.edu
Sender: 
X-Mail-Path: 
X-Original-Date: Fri, 10 Jan 2003 11:59:56 -0800 (PST)
X-Original-Message-ID: 
Xref: shelby.stanford.edu su.class.cs244a:3659


hi--
just a reminder, there's a review session today in Gates B1 at
3.15pm.  we'll cover assignment #1 as well as an overview of
socket programming.

the session will also be televised for SITN students (channel E3),
and will be available online on the SCPD pages later.

Matthew
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: echodemo
Date: Fri, 10 Jan 2003 21:44:39 +0000 (UTC)
Lines: 42
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: caliban.stanford.edu
X-Trace: news.Stanford.EDU 1042235079 13226 171.64.74.37 (10 Jan 2003 21:44:39 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-17.7.x (i686))
Xref: shelby.stanford.edu su.class.cs244a:3660

David,

I checked again, it turns out klamath does restrict echo requests. Requests from outside Stanford might not work.

  Guido

 Seetapun  wrote:

> Thanks for looking a this: I understand about the Solaris/gcc guarantees.

> [adsl-63-193-5-243:~/ftpcopy] seetapun% telnet klamath.stanford.edu 7
> Trying 171.64.74.58...
> Connected to yuba.stanford.edu.
> Escape character is '^]'.
> Connection closed by foreign host.


> In article 
>  Guido Appenzeller  writes:
>> David,
>> 
>> it should run fine everywhere. Where are you located?
>> It could be that your ISP filters TCP port 7.
>> 
>> Try:
>> 
>>   telnet klamath.stanford.edu 7
>> 
>> Does that work? Also we only guarantee that this software runs under Solaris if compiled with gcc.
>> 
>>   Guido
>> 
>> 
>> 
>> > I have compiled and run the echodemo program and it works fine (after
>> > debugging) when
>> > I am on epic/saga etc. Is there any reason when I run it on my home machine
>> > that it should not work (it compiles  w/o error)?  The message is sent correctly 
>> > but when I try to read
>> > from the socket I get an error (returns -1). Does the echo server only send stuff
>> > to the stanford.edu domain? When I try to communicate with an ftp server
>> > (say transfer.stanford.edu) I can read from the socket just fine.
.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS #1 questions
Date: Sat, 11 Jan 2003 01:17:17 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1042247837 22109 171.64.15.117 (11 Jan 2003 01:17:17 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3661

>Q6(a):
>1. can we assume that all packets are of the same size, L?
>2. can we assume all inter-packets gap having the same lengths, g?
>or the above two assumptions are irrelevant to solving the problem?

They're definitely relevant.  Keep in mind that you want to "be sure that the
buffer will never overflow."  So you'll want to consider the worst case to
make sure this doesn't happen.

>Q9(b):
>is there any buffer size constraint on this switch? or we are free to
>specify a particular buffer size which works with our output link rate?

Again, to guarantee that packet	overflows "will never take place," you'll
need to consider the worst case arrival process in answering this problem.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: prob 5a/b
Date: Sat, 11 Jan 2003 01:18:14 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1042247894 22126 171.64.15.117 (11 Jan 2003 01:18:14 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3662


>In question 5, since processing time within the router is negligible, what
>does the number of packets in the buffer have to do with anything?

Processing time, i.e. the time to decide on which output link the packet should
be sent (as a real router must do), is negligible, but packet transmission
time itself is not.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS1, Q7
Date: Sat, 11 Jan 2003 01:26:59 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1042248419 22417 171.64.15.117 (11 Jan 2003 01:26:59 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3663

Brian Hing-Kit Tsang  writes:

>For the store and forward model, do we assume that the buffer does not
>free the memory associated with a packet until it sends out the last bit
>of that packet?

Can you explain why this matters?  (I don't see any connection to Q7).

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS1 Q9
Date: Sat, 11 Jan 2003 01:35:55 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1042248955 22673 171.64.15.117 (11 Jan 2003 01:35:55 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3664


>For question 9c, don't we need an output link speed?  Without it, if you
>defined it to be equal to that in 9b, then no packet would ever hit the
>buffer...  Or am I missing something?  -Steve

You'd still need some amount of buffering, because the router is a store-and-
forward device.  But for this question, since it asks for the maximum buffer
length and minimum service rate, you can basically disregard the output link;
e.g., assume the router's service process is the bottleneck and the output
link is faster than this (and is thus irrelevant since D(t) = S(t)).

Hope this makes sense.
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: PS1 Q9
Date: Fri, 10 Jan 2003 17:35:47 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042249007 22690 128.12.186.92 (11 Jan 2003 01:36:47 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3665

The question is asking you to provide the minimum service rate.  That is the
rate at which the bits must be drained out of the queue to ensure that the
queue is stable.  Setting the service rate to that of 9b will ensure a
stable queue but that is most likely not the minimum rate.

--Russ

"Steve Garrity"  wrote in message

> For question 9c, don't we need an output link speed?  Without it, if you
> defined it to be equal to that in 9b, then no packet would ever hit the
> buffer...  Or am I missing something?  -Steve
>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Purify
Date: Sat, 11 Jan 2003 01:36:57 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1042249017 22742 171.64.15.117 (11 Jan 2003 01:36:57 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3666

"Bina Vasavda"  writes:

>Hi, when I try to run echodemo.purify, I wait for a long time, and finally
>get the following error. Any suggestions?
>Thanks,
>Bina

>[echodemo.purify waiting for rtslave on
>/tmp/echodemo.purify_16570_pure_cx_1199899173_17632.............
>Giving up]
>Purify: Couldn't connect to rtslave.


I've never seen that before.  Do you still get the error today?  On which
machine, or is it on all machines that you try?
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: PS1, Q7
Date: Fri, 10 Jan 2003 17:51:32 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042249952 23184 128.12.186.92 (11 Jan 2003 01:52:32 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3667

Just think of the buffer space being freed as soon as the bit has been
serviced.  However, remember that if the router is a store and forward
design, you must wait until you have a complete packet in the buffer before
you can start servicing it.

As to what Matt said, I agree with him that I do not see the connection of
this question with Q7.

--Russ

"Brian Hing-Kit Tsang"  wrote in message

> For the store and forward model, do we assume that the buffer does not
> free the memory associated with a packet until it sends out the last bit
> of that packet?
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Purify
Date: Fri, 10 Jan 2003 17:53:27 -0800
Lines: 25
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042250066 23214 128.12.186.92 (11 Jan 2003 01:54:26 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3668

Make sure that you are running purify on a Solaris machine (ie: do not run
on the Raptor or Firebird machines).

--Russ

"Matthew Jonathan Holliman"  wrote in message

> "Bina Vasavda"  writes:
>
> >Hi, when I try to run echodemo.purify, I wait for a long time, and
finally
> >get the following error. Any suggestions?
> >Thanks,
> >Bina
>
> >[echodemo.purify waiting for rtslave on
> >/tmp/echodemo.purify_16570_pure_cx_1199899173_17632.............
> >Giving up]
> >Purify: Couldn't connect to rtslave.
>
>
> I've never seen that before.  Do you still get the error today?  On which
> machine, or is it on all machines that you try?


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: read() blocks forever on data connection
Date: Sat, 11 Jan 2003 04:29:45 +0000 (UTC)
Organization: Stanford University
Lines: 55
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic13.stanford.edu
X-Trace: news.Stanford.EDU 1042259385 27291 171.64.15.46 (11 Jan 2003 04:29:45 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3669


I am having the following problem. I can set up the control connection and 
the FTP server behaves as expected. I then set up a new socket to listen for
data connections with an ephemeral port as described. A port command is sent
to the server and I receive a 200 response code indicating success. A LIST
command is then sent to the server which responds with 150 for Opening a data
connection. I then use accept on the listening socket and I get a connection from
the right IP address Port 20 which seems correct. I also get form the control
connection a 226 saying the transfer is complete (for the LIST presumably).
But when I try to read from the accepted socket the program blocks forever even
if I try to read just one byte.

Here is some print out from the program.

epic13:~/cs244a/pp1> ./ftpcopy ftp.stanford.edu
Waiting for reply....
220-----------------------------------------------------------------------------
220-    Abuse of this facility may be considered violation of Federal or
220-    California law or the policies of Stanford University.  If you have
220-    questions regarding this policy please send mail to
220-    
220-----------------------------------------------------------------------------
220-
220 ftp2.Stanford.EDU FTP server ready.
Sending username.
Bytes sent 16
Waiting for reply....
331 Guest login ok, send your complete e-mail address as password.
Sending password.
Bytes sent 11
Waiting for reply....
230-Please read the file README
230-  it was last modified on Fri Feb 15 12:22:25 2002 - 329 days ago
230 Guest login ok, access restrictions apply.
Host is epic13.Stanford.EDU
IP address 171.64.15.46
IP address 171, 64, 15, 46
TCP port number 64653
TCP port h 252, l 141
port_string = PORT 171,64,15,46,252,141
Bytes sent 27
Waiting for reply....
200 PORT command successful.
Bytes sent 8
Waiting for reply....
200 Type set to A.
Bytes sent 6
Waiting for reply....
150 Opening ASCII mode data connection for /bin/ls.
connection from 171.64.15.241, port 20
connected data socket = 0
listening data socket = 5
control socket = 4
226 Transfer complete.
(hangs here)^C
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: read() blocks forever on data connection
Date: Sat, 11 Jan 2003 01:03:16 -0800
Lines: 85
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042275857 5679 128.12.186.92 (11 Jan 2003 09:04:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3670

There could be a number of things going wrong which leads to the following
behavior.  Make sure you are aware that the accept command returns a new
socket and that you are calling read specifying this socket.

The reason for this second socket being created is so the open listening
socket is freed up again for another connection.  I have not tried this
myself but my guess is if you call read on the listening socket, it will
most likely hang waiting for data but since no data is being sent on that
socket your program will make no progress.

I hope this helps.

--Russ

"David Seetapun"  wrote in message

>
> I am having the following problem. I can set up the control connection and
> the FTP server behaves as expected. I then set up a new socket to listen
for
> data connections with an ephemeral port as described. A port command is
sent
> to the server and I receive a 200 response code indicating success. A LIST
> command is then sent to the server which responds with 150 for Opening a
data
> connection. I then use accept on the listening socket and I get a
connection from
> the right IP address Port 20 which seems correct. I also get form the
control
> connection a 226 saying the transfer is complete (for the LIST
presumably).
> But when I try to read from the accepted socket the program blocks forever
even
> if I try to read just one byte.
>
> Here is some print out from the program.
>
> epic13:~/cs244a/pp1> ./ftpcopy ftp.stanford.edu
> Waiting for reply....
>
220-------------------------------------------------------------------------
----
> 220-    Abuse of this facility may be considered violation of Federal or
> 220-    California law or the policies of Stanford University.  If you
have
> 220-    questions regarding this policy please send mail to
> 220-    
>
220-------------------------------------------------------------------------
----
> 220-
> 220 ftp2.Stanford.EDU FTP server ready.
> Sending username.
> Bytes sent 16
> Waiting for reply....
> 331 Guest login ok, send your complete e-mail address as password.
> Sending password.
> Bytes sent 11
> Waiting for reply....
> 230-Please read the file README
> 230-  it was last modified on Fri Feb 15 12:22:25 2002 - 329 days ago
> 230 Guest login ok, access restrictions apply.
> Host is epic13.Stanford.EDU
> IP address 171.64.15.46
> IP address 171, 64, 15, 46
> TCP port number 64653
> TCP port h 252, l 141
> port_string = PORT 171,64,15,46,252,141
> Bytes sent 27
> Waiting for reply....
> 200 PORT command successful.
> Bytes sent 8
> Waiting for reply....
> 200 Type set to A.
> Bytes sent 6
> Waiting for reply....
> 150 Opening ASCII mode data connection for /bin/ls.
> connection from 171.64.15.241, port 20
> connected data socket = 0
> listening data socket = 5
> control socket = 4
> 226 Transfer complete.
> (hangs here)^C


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: read() blocks forever on data connection
Date: Sat, 11 Jan 2003 15:14:40 +0000 (UTC)
Organization: Stanford University
Lines: 100
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: epic1.stanford.edu
X-Trace: news.Stanford.EDU 1042298080 19011 171.64.15.34 (11 Jan 2003 15:14:40 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3671


In article 
 "Russell Greene"  writes:
> There could be a number of things going wrong which leads to the following
> behavior.  Make sure you are aware that the accept command returns a new
> socket and that you are calling read specifying this socket.
Yes I have done this. In fact I called accept with pointers to data structures
that allow me to print that the connection comes from the expected IP address and
port 20.

> 
> The reason for this second socket being created is so the open listening
> socket is freed up again for another connection.  I have not tried this
> myself but my guess is if you call read on the listening socket, it will
> most likely hang waiting for data but since no data is being sent on that
> socket your program will make no progress.

If I call read on the listening socket after accepting a connection
 it returns -1 and a "socket not connected error" but at least returns.

Am I correct in saying that once I accept the connection, the data is buffered
until I go to read it? It just seems like I am "missing" the data somehow.


> 
> I hope this helps.
> 
> --Russ
> 
> "David Seetapun"  wrote in message
> 
> >
> > I am having the following problem. I can set up the control connection and
> > the FTP server behaves as expected. I then set up a new socket to listen
> for
> > data connections with an ephemeral port as described. A port command is
> sent
> > to the server and I receive a 200 response code indicating success. A LIST
> > command is then sent to the server which responds with 150 for Opening a
> data
> > connection. I then use accept on the listening socket and I get a
> connection from
> > the right IP address Port 20 which seems correct. I also get form the
> control
> > connection a 226 saying the transfer is complete (for the LIST
> presumably).
> > But when I try to read from the accepted socket the program blocks forever
> even
> > if I try to read just one byte.
> >
> > Here is some print out from the program.
> >
> > epic13:~/cs244a/pp1> ./ftpcopy ftp.stanford.edu
> > Waiting for reply....
> >
> 220-------------------------------------------------------------------------
> ----
> > 220-    Abuse of this facility may be considered violation of Federal or
> > 220-    California law or the policies of Stanford University.  If you
> have
> > 220-    questions regarding this policy please send mail to
> > 220-    
> >
> 220-------------------------------------------------------------------------
> ----
> > 220-
> > 220 ftp2.Stanford.EDU FTP server ready.
> > Sending username.
> > Bytes sent 16
> > Waiting for reply....
> > 331 Guest login ok, send your complete e-mail address as password.
> > Sending password.
> > Bytes sent 11
> > Waiting for reply....
> > 230-Please read the file README
> > 230-  it was last modified on Fri Feb 15 12:22:25 2002 - 329 days ago
> > 230 Guest login ok, access restrictions apply.
> > Host is epic13.Stanford.EDU
> > IP address 171.64.15.46
> > IP address 171, 64, 15, 46
> > TCP port number 64653
> > TCP port h 252, l 141
> > port_string = PORT 171,64,15,46,252,141
> > Bytes sent 27
> > Waiting for reply....
> > 200 PORT command successful.
> > Bytes sent 8
> > Waiting for reply....
> > 200 Type set to A.
> > Bytes sent 6
> > Waiting for reply....
> > 150 Opening ASCII mode data connection for /bin/ls.
> > connection from 171.64.15.241, port 20
> > connected data socket = 0
> > listening data socket = 5
> > control socket = 4
> > 226 Transfer complete.
> > (hangs here)^C
> 
> 
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: PORT and PASV
Date: Sat, 11 Jan 2003 16:27:12 +0000 (UTC)
Organization: Stanford University
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic1.stanford.edu
X-Trace: news.Stanford.EDU 1042302432 20385 171.64.15.34 (11 Jan 2003 16:27:12 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3672


Using PORT read() blocks forever even when I get transfer complete on control 
connection.

using PASV and opening a connection to the port the server gives me works fine.

Can I just use PASV for transferring data for the project?
.

Path: shelby.stanford.edu!epic25.Stanford.EDU!smadhura
From: Madhura Sudhakar Sharangpani 
Newsgroups: su.class.cs244a
Subject: LIST problem
Date: Sat, 11 Jan 2003 10:55:21 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042311325 23857 171.64.15.62 (11 Jan 2003 18:55:25 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3673

Hi
After creating a control connection to the server ftp.stanford.edu, I
tried using LIST command, but LIST is giving me only the listing of
directoried on the server, & no listing of files is obtained,
When I try using NLST command, it gives proper listing of everythins, but
command "LIST" gives me only directory listing
also when I gibe RETR command for a particular file, I get error,
permission denied,
What is the problem?
Also which directory should I go into in while connecting to
ftp.stanford.edu?, I currently tried going into my own directory
Please let me know
Madhura.

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: PORT and PASV
Date: Sat, 11 Jan 2003 11:01:26 -0800
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042311690 24071 171.64.15.80 (11 Jan 2003 19:01:30 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3674


>
> Using PORT read() blocks forever even when I get transfer complete on control
> connection.
>
> using PASV and opening a connection to the port the server gives me works fine.
>
> Can I just use PASV for transferring data for the project?


  Sure thing.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: Duggan John Dieterly 
Newsgroups: su.class.cs244a
Subject: Material for Next Lecture?
Date: Sat, 11 Jan 2003 19:08:42 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic28.stanford.edu
X-Trace: news.Stanford.EDU 1042312122 23992 171.64.15.59 (11 Jan 2003 19:08:42 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3675

Hi,

Is the prof going to cover the remaining material in Handout #3 starting on 
slide #26 ("Some Definitions") during the 
next lecture on Jan 14?  It seems that this material is essential for 
completing Problem Set #1, but the schedule on the course web page 
doesn't appear to list this material.   Are we expected to be able to 
complete PS #1 at this point (sat jan 11), or will we be better equipped
to handle this after tuesday's lecture (jan 14)?  

If the prof is going to go over this material on jan 14, that doesn't leave
us much time to complete the assignment given that it is due the next day.

Thank you.

-deklan dieterly 
.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: LIST problem
Date: Sat, 11 Jan 2003 11:22:39 -0800
Lines: 57
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042312961 24523 171.64.15.80 (11 Jan 2003 19:22:41 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3676


> Hi
> After creating a control connection to the server ftp.stanford.edu, I
> tried using LIST command, but LIST is giving me only the listing of
> directoried on the server, & no listing of files is obtained,

Here is an output I get from LIST at ftp.stanford.edu:

class/engre62" is current directory.
250 CWD command successful.
200 Type set to A.
227 Entering Passive Mode (171,64,15,241,249,112)
150 Opening ASCII mode data connection for /bin/ls.
total 5765
drwxr-xr-x    4 root     root         2048 Nov 22 16:53 .backup
-rw-------    1 70448    root          881 Sep 24 09:49 .description
-rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_b.TIFF
-rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_g.TIFF
-rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_r.TIFF
drwxr-xr-x    2 root     root         2048 Nov 27 17:42 WWW
drwxr-xr-x    4 70448    root         2048 Sep 16 18:27 geophys112.2002
-rw-r--r--    1 5469     37         119032 Sep 27 09:40 hw1data.mat
-rw-r--r--    1 5469     37        2160216 Oct 11 12:08 hw3data.mat
-rw-r--r--    1 5469     37          47648 Oct 18 11:01 hw4data.mat
-rw-r--r--    1 5469     37        2592904 Oct 18 11:01 hw4magdata.mat
-rw-r--r--    1 5469     37         651624 Oct 18 11:01 hw4whistler.mat
-rw-r--r--    1 5469     37          19872 Oct 25 12:44 hw5data.mat
-rw-r--r--    1 5469     37            750 Nov  8 12:41 inklindata
-rw-r--r--    1 5469     37           1407 Oct 11 12:08 soil.dat

I'm using passive mode LIST and it does list files.  You can always
use telnet and PASV mode to verify that the commands are working correctly.


> When I try using NLST command, it gives proper listing of everythins, but
> command "LIST" gives me only directory listing
> also when I gibe RETR command for a particular file, I get error,
> permission denied,
> What is the problem?

Check the permissions on the file you are trying to get, if you cannot
get the file using vanilla ftp then you don't have permissions to the file.

> Also which directory should I go into in while connecting to
> ftp.stanford.edu?, I currently tried going into my own directory
> Please let me know

That really is up to you .. why don't you get the suffix mat with a recursive depth of
2?

 ./ftpcopy mat 2 ftp.stanford.edu

remember, this is only to test your implementation.

regards,
/mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: read() blocks forever on data connection
Date: Sat, 11 Jan 2003 11:47:24 -0800
Lines: 50
Distribution: su
Message-ID: 
References:  
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042314445 24970 171.64.15.80 (11 Jan 2003 19:47:25 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3677

>
> In article 
>  "Russell Greene"  writes:
> > There could be a number of things going wrong which leads to the following
> > behavior.  Make sure you are aware that the accept command returns a new
> > socket and that you are calling read specifying this socket.
> Yes I have done this. In fact I called accept with pointers to data structures
> that allow me to print that the connection comes from the expected IP address and
> port 20.
>
> >
> > The reason for this second socket being created is so the open listening
> > socket is freed up again for another connection.  I have not tried this
> > myself but my guess is if you call read on the listening socket, it will
> > most likely hang waiting for data but since no data is being sent on that
> > socket your program will make no progress.
>
> If I call read on the listening socket after accepting a connection
>  it returns -1 and a "socket not connected error" but at least returns.

 You never read on the listening socket for data. My suggestion is to use PASV
 mode, this way you don't have to bind/listen/accept and then service the
 connecting socket. In fact you can simply reuse the code you initially wrote
 to connect to the ftp server.

 Have you been succesful with getting the LIST command to work with the PORT
 command?  You may want to use netcat to verify that the server is indeed
 sending to your bound connection.

 http://www.atstake.com/research/tools/network_utilities/

 I'm not sure if Dr. McKeown has posted this link, but there is a wonderful
 socket tutorial at:

 http://www.ecst.csuchico.edu/~beej/guide/net/html/

 I will go over a small (50 line or so) program that demonstrates the problem
 if you still cannot figure it out.

>
> Am I correct in saying that once I accept the connection, the data is buffered
> until I go to read it? It just seems like I am "missing" the data somehow.

 You shouldn't have to worry about system level buffering, you can rest
 assured the data is not lost. The sender is blocked from sending if you are
 not receiving on the other end.

 /mc


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Material for Next Lecture?
Date: Sat, 11 Jan 2003 12:45:35 -0800
Lines: 32
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: russell2.stanford.edu
X-Trace: news.Stanford.EDU 1042317995 26422 128.12.177.14 (11 Jan 2003 20:46:35 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3678

Hi,

      The remaining material is very useful in completing Problem Set #1.  I
believe, although I cannot guarantee, that it will be covered on Tuesday.
However, you should probably spend some time over the weekend looking over
that material.  That way you can finish Problem Set 1 early.

--Russ


"Duggan John Dieterly"  wrote in message

> Hi,
>
> Is the prof going to cover the remaining material in Handout #3 starting
on
> slide #26 ("Some Definitions") during the
> next lecture on Jan 14?  It seems that this material is essential for
> completing Problem Set #1, but the schedule on the course web page
> doesn't appear to list this material.   Are we expected to be able to
> complete PS #1 at this point (sat jan 11), or will we be better equipped
> to handle this after tuesday's lecture (jan 14)?
>
> If the prof is going to go over this material on jan 14, that doesn't
leave
> us much time to complete the assignment given that it is due the next day.
>
> Thank you.
>
> -deklan dieterly


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: read() blocks forever on data connection
Date: Sat, 11 Jan 2003 22:02:50 +0000 (UTC)
Organization: Stanford University
Lines: 64
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: epic28.stanford.edu
X-Trace: news.Stanford.EDU 1042322570 28280 171.64.15.59 (11 Jan 2003 22:02:50 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3679


In article 
 Martin Casado  writes:
> >
> > In article 
> >  "Russell Greene"  writes:
> > > There could be a number of things going wrong which leads to the following
> > > behavior.  Make sure you are aware that the accept command returns a new
> > > socket and that you are calling read specifying this socket.
> > Yes I have done this. In fact I called accept with pointers to data structures
> > that allow me to print that the connection comes from the expected IP address and
> > port 20.
> >
> > >
> > > The reason for this second socket being created is so the open listening
> > > socket is freed up again for another connection.  I have not tried this
> > > myself but my guess is if you call read on the listening socket, it will
> > > most likely hang waiting for data but since no data is being sent on that
> > > socket your program will make no progress.
> >
> > If I call read on the listening socket after accepting a connection
> >  it returns -1 and a "socket not connected error" but at least returns.
> 
>  You never read on the listening socket for data. My suggestion is to use PASV
>  mode, this way you don't have to bind/listen/accept and then service the
>  connecting socket. In fact you can simply reuse the code you initially wrote
>  to connect to the ftp server.

No that was not the problem as I was reading from socket k = accept(...). I was
just pointing out that if you read on the listening socket it would not block.
But if I read from the socket which was returned by accept then it blocked
forever. I am using PASV at the moment and it is fine. I am just curious why
PORT doesn't seem to work

> 
>  Have you been succesful with getting the LIST command to work with the PORT
>  command?  You may want to use netcat to verify that the server is indeed
>  sending to your bound connection.

No: the server claims it has completed the data transfer related to LIST but no
data ever shows up. I will try netcat. 

> 
>  http://www.atstake.com/research/tools/network_utilities/
> 
>  I'm not sure if Dr. McKeown has posted this link, but there is a wonderful
>  socket tutorial at:
> 
>  http://www.ecst.csuchico.edu/~beej/guide/net/html/
> 
>  I will go over a small (50 line or so) program that demonstrates the problem
>  if you still cannot figure it out.
> 
> >
> > Am I correct in saying that once I accept the connection, the data is buffered
> > until I go to read it? It just seems like I am "missing" the data somehow.
> 
>  You shouldn't have to worry about system level buffering, you can rest
>  assured the data is not lost. The sender is blocked from sending if you are
>  not receiving on the other end.
> 
>  /mc
> 
> 
.

Path: shelby.stanford.edu!elaine28.Stanford.EDU!ishastri
From: Ishaan S Shastri 
Newsgroups: su.class.cs244a
Subject: prob 7b
Date: Sat, 11 Jan 2003 14:58:38 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine28.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042325920 29626 171.64.15.103 (11 Jan 2003 22:58:40 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3680

Hi all,

For problem 7, part b, what are the units of A(t), S(t), D(t), etc? Are
they packets or bits?  It matters if we are only interested in reporting
discrete numbers of packets (e.g. 150 bits serviced == only 1 packet
serviced).

Thanks!
Ishaan

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: prob 7b
Date: Sat, 11 Jan 2003 17:52:42 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: russell2.stanford.edu
X-Trace: news.Stanford.EDU 1042336423 4139 128.12.177.15 (12 Jan 2003 01:53:43 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3682

The answers should be in bits.

--Russ


"Ishaan S Shastri"  wrote in message

> Hi all,
>
> For problem 7, part b, what are the units of A(t), S(t), D(t), etc? Are
> they packets or bits?  It matters if we are only interested in reporting
> discrete numbers of packets (e.g. 150 bits serviced == only 1 packet
> serviced).
>
> Thanks!
> Ishaan
>


.

Path: shelby.stanford.edu!saga22.Stanford.EDU!tlunny
From: Timothy Patrick Lunny 
Newsgroups: su.class.cs244a
Subject: Ansi 99
Date: Sat, 11 Jan 2003 18:53:51 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042340035 5817 171.64.15.152 (12 Jan 2003 02:53:55 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3683

This was somewhat addressed in the newsgroup from last year, but can we
compile our programs with -fstd=iso9899:199x instead of -ansi since C99
is the latest ANSI C and coming up on 4 years old?

Thanks-
Tim Lunny

.

Path: shelby.stanford.edu!saga21.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: LIST response
Date: Sat, 11 Jan 2003 20:14:16 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042344858 7586 171.64.15.151 (12 Jan 2003 04:14:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3684

Can we assume that the first line from the response will always be of the
form : total <number of lines in listing>



Thanks,
nishant



.

Path: shelby.stanford.edu!saga10.Stanford.EDU!priyank9
From: Priyank Kshitij Patel 
Newsgroups: su.class.cs244a
Subject: Transport endpoint not connected!!
Date: Sat, 11 Jan 2003 20:40:19 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga10.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042346422 8167 171.64.15.140 (12 Jan 2003 04:40:22 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3685

Hi,

I am facing this error after I issue the LIST command and then accept
the data connection from the server and start to read the first bytes from
there.

the read returns with -1 and the error is ENOTCONN i.e. "Transport
endpoint not connected"

I would like to mention at this point that my accept() on the data socket
which is the immediately preceding call on the same socket descriptor
works fine....

thanks

Priyank


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Transport endpoint not connected!!
Date: Sat, 11 Jan 2003 21:01:48 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042347711 8629 171.64.15.80 (12 Jan 2003 05:01:51 GMT)
X-Complaints-To: 
To: Priyank Kshitij Patel 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3686

> Hi,
>
> I am facing this error after I issue the LIST command and then accept
> the data connection from the server and start to read the first bytes from
> there.
>
> the read returns with -1 and the error is ENOTCONN i.e. "Transport
> endpoint not connected"

 Are you sure you are reading from the correct file descriptor?  Remember,
 accept returns a new file descriptor for the connected socket, this is
 the one you are going to want to read from.  This has been mentioned
 previously.

>
> I would like to mention at this point that my accept() on the data socket
> which is the immediately preceding call on the same socket descriptor
> works fine....

 Doh! here is the problem, read from the descriptor returned from the call
 to accept.... aka

  new_fd = accept(sockfd, (struct sockaddr *)&their_addr, &sin_size);

  read from new_fd, not sockfd ;-)

  /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: LIST response
Date: Sat, 11 Jan 2003 21:14:29 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042348471 8885 171.64.15.80 (12 Jan 2003 05:14:31 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3687


> Can we assume that the first line from the response will always be of the
> form : total <number of lines in listing>
>

 I don't think so, that isn't in the rfc (is it? I can't find it) ... plus you
 don't need to rely on the server telling you the number of lines to expect,
 simply read everything sent by the server and tokenize by line (with delimeter
 \n or to be more correct \r\n but I think this has problems with some badly
 written servers).

 /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Ansi 99
Date: Sat, 11 Jan 2003 21:18:09 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042348691 8977 171.64.15.80 (12 Jan 2003 05:18:11 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3688


> This was somewhat addressed in the newsgroup from last year, but can we
> compile our programs with -fstd=iso9899:199x instead of -ansi since C99
> is the latest ANSI C and coming up on 4 years old?

 If that makes you happy I don't see any problem with it, you might want
 -Wall and -pedantic too (if they aren't already in the makefile, I don't
 have the current assignment source)

 /mc


>
> Thanks-
> Tim Lunny
>
>

.

Path: shelby.stanford.edu!saga3.Stanford.EDU!myc
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: PS1, Q4 and Q6
Date: Sat, 11 Jan 2003 21:46:04 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042350368 9547 171.64.15.133 (12 Jan 2003 05:46:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3689

Hi,

I have the following questions about problem set #1:

1. In problem #4, if the last portion of the file can not fill up the last
packet to make it P bits long, do we assume there's some kind of padding
to make up the P bits, or the last packet can be smaller than regular
ones, or simply assume this situation won't happen?

2. For problem #6, part a, I can only see an answer if we assume the queue
reaches some stable state in worst case, i.e., the output link drains bits
fast enough comparing to packets arrival rate so that the length of queue
remains stable. But since R, C, L and g are given, it is possible that C
is too slow to remove the packets in time. In this case, the buffer will
be filled up eventually no matter how large it is. I'm confused. Would you
please clarify it for me?

Thanks.
Mingying

.

Path: shelby.stanford.edu!saga14.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: purify ==> Address Family not supported by protocol family
Date: Sat, 11 Jan 2003 22:03:05 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga14.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042351386 9948 171.64.15.144 (12 Jan 2003 06:03:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3690

My ftpcopy implements most of the tasks, but it doesn't run with purify.

Upon trying to "connect" to the socket for the FTP control connection, I
get error #124 -- "Address family not supported by protocol family".

The connect succeeds when I don't compile the pure version. Code:
((socketId =	socket(AF_INET, SOCK_STREAM, 0)) <0)
	// no err
if (connect(socketId,
	 (struct sockaddr*) pServer,
	sizeof(struct sockaddr_in))) <0
	//perror("Error connecting: Address family not supported by protocol family");

Thoughts?

.

Path: shelby.stanford.edu!saga13.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: test script
Date: Sun, 12 Jan 2003 01:31:34 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042363896 15167 171.64.15.143 (12 Jan 2003 09:31:36 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3691

Hi, my project hangs (the server times out) on parts L.1 through L.4 of
the test script when it executes ../ftpcopy ext 1  But I've tested it with
localhost and it works fine. Any ideas? Thanks

Rhea

.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: question about read command
Date: Sun, 12 Jan 2003 02:02:56 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042365787 16260 171.64.15.78 (12 Jan 2003 10:03:07 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3692

Hi,

For the assignment we can assume that no NVT string is longer than 1024
bytes.

I had a question though. Consider a case where the response of the server
is in multiple lines and each line is much smaller than 1024 bytes.
If I am not wrong each line is delimited by "\r\n"
Now if I do a read with a buffer size of 1024, will I get multiple lines
in the buffer (beacuse each line is much smaller than 1024 bytes) or the
buffer will contain only the first line delimited by "\r\n".
i.e. will the buffer be filled completely (1024 bytes) or will it stop
reading after first delimiter(first line).

Milap



.

Path: shelby.stanford.edu!not-for-mail
From: "Eric Ogren" 
Newsgroups: su.class.cs244a
Subject: Re: purify ==> Address Family not supported by protocol family
Date: Sun, 12 Jan 2003 03:11:00 -0800
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: eogren.stanford.edu
X-Trace: news.Stanford.EDU 1042369861 17601 128.12.95.90 (12 Jan 2003 11:11:01 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3693

Random guess, but did you either forget to fill in pServer->sin_family or
fill it in with the wrong value? Seems to me like that's the only place a
mismatch could occur (but i could be wrong)...

Eric

"Jonathan D Herbach"  wrote in message

> My ftpcopy implements most of the tasks, but it doesn't run with purify.
>
> Upon trying to "connect" to the socket for the FTP control connection, I
> get error #124 -- "Address family not supported by protocol family".
>
> The connect succeeds when I don't compile the pure version. Code:
> ((socketId = socket(AF_INET, SOCK_STREAM, 0)) <0)
> // no err
> if (connect(socketId,
> (struct sockaddr*) pServer,
> sizeof(struct sockaddr_in))) <0
> //perror("Error connecting: Address family not supported by protocol
family");
>
> Thoughts?
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Alexander Fontana" 
Newsgroups: su.class.cs244a
Subject: freeing memory on fatal errors
Date: Sun, 12 Jan 2003 05:28:52 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: afontana.stanford.edu
X-Trace: news.Stanford.EDU 1042378370 23115 128.12.101.143 (12 Jan 2003 13:32:50 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3694

Suppose our ftpcopy program encounters some error where a prompt exit is a
reasonable solution (ie disk is full).  Do we need to bother freeing memory
if the program is just going to exit anyway?

Thanks,
Alex


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: LIST problem
Date: Sun, 12 Jan 2003 06:15:54 -0800
Lines: 74
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1042380925 24034 128.12.195.69 (12 Jan 2003 14:15:25 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3695

I am also having this problem. I have passive mode in my code, but my LIST
command still only return directories. I set the transfer to ASCII, then
issue the PASV command, and connect to the server at the given port, then I
do the LIST command. However, I am only getting directories back, no files.
Please help, what else could be wrong?

-myl


"Martin Casado"  wrote in message

>
> > Hi
> > After creating a control connection to the server ftp.stanford.edu, I
> > tried using LIST command, but LIST is giving me only the listing of
> > directoried on the server, & no listing of files is obtained,
>
> Here is an output I get from LIST at ftp.stanford.edu:
>
> class/engre62" is current directory.
> 250 CWD command successful.
> 200 Type set to A.
> 227 Entering Passive Mode (171,64,15,241,249,112)
> 150 Opening ASCII mode data connection for /bin/ls.
> total 5765
> drwxr-xr-x    4 root     root         2048 Nov 22 16:53 .backup
> -rw-------    1 70448    root          881 Sep 24 09:49 .description
> -rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_b.TIFF
> -rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_g.TIFF
> -rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_r.TIFF
> drwxr-xr-x    2 root     root         2048 Nov 27 17:42 WWW
> drwxr-xr-x    4 70448    root         2048 Sep 16 18:27 geophys112.2002
> -rw-r--r--    1 5469     37         119032 Sep 27 09:40 hw1data.mat
> -rw-r--r--    1 5469     37        2160216 Oct 11 12:08 hw3data.mat
> -rw-r--r--    1 5469     37          47648 Oct 18 11:01 hw4data.mat
> -rw-r--r--    1 5469     37        2592904 Oct 18 11:01 hw4magdata.mat
> -rw-r--r--    1 5469     37         651624 Oct 18 11:01 hw4whistler.mat
> -rw-r--r--    1 5469     37          19872 Oct 25 12:44 hw5data.mat
> -rw-r--r--    1 5469     37            750 Nov  8 12:41 inklindata
> -rw-r--r--    1 5469     37           1407 Oct 11 12:08 soil.dat
>
> I'm using passive mode LIST and it does list files.  You can always
> use telnet and PASV mode to verify that the commands are working
correctly.
>
>
> > When I try using NLST command, it gives proper listing of everythins,
but
> > command "LIST" gives me only directory listing
> > also when I gibe RETR command for a particular file, I get error,
> > permission denied,
> > What is the problem?
>
> Check the permissions on the file you are trying to get, if you cannot
> get the file using vanilla ftp then you don't have permissions to the
file.
>
> > Also which directory should I go into in while connecting to
> > ftp.stanford.edu?, I currently tried going into my own directory
> > Please let me know
>
> That really is up to you .. why don't you get the suffix mat with a
recursive depth of
> 2?
>
>  ./ftpcopy mat 2 ftp.stanford.edu
>
> remember, this is only to test your implementation.
>
> regards,
> /mc
>


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: purify ==> Address Family not supported by protocol family
Date: Sun, 12 Jan 2003 07:06:35 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042384001 24910 171.64.15.80 (12 Jan 2003 15:06:41 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3696

On Sat, 11 Jan 2003, Jonathan D Herbach wrote:

> My ftpcopy implements most of the tasks, but it doesn't run with purify.
>
> Upon trying to "connect" to the socket for the FTP control connection, I
> get error #124 -- "Address family not supported by protocol family".

 I haven't seen this occur before.  Could you, perhaps, strip your
 code down to a simple 20-30 line main routine and see if you have the
 same problem?  Is anyone else seeing this?

>
> The connect succeeds when I don't compile the pure version. Code:
> ((socketId =	socket(AF_INET, SOCK_STREAM, 0)) <0)
> 	// no err
> if (connect(socketId,
> 	 (struct sockaddr*) pServer,
> 	sizeof(struct sockaddr_in))) <0
> 	//perror("Error connecting: Address family not supported by protocol family");

 Is this really your perror() line? Or did you just type that to illustrate the
 error bieng reported by perror()?

 /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: question about read command
Date: Sun, 12 Jan 2003 07:27:30 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042385252 25317 171.64.15.80 (12 Jan 2003 15:27:32 GMT)
X-Complaints-To: 
To: Milap Chandrakant Shah 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3697


> Hi,
>
> For the assignment we can assume that no NVT string is longer than 1024
> bytes.

 If it is not in the rfc I don't see why you would make this assumption.

>
> I had a question though. Consider a case where the response of the server
> is in multiple lines and each line is much smaller than 1024 bytes.
> If I am not wrong each line is delimited by "\r\n"
> Now if I do a read with a buffer size of 1024, will I get multiple lines
> in the buffer (beacuse each line is much smaller than 1024 bytes) or the
> buffer will contain only the first line delimited by "\r\n".
> i.e. will the buffer be filled completely (1024 bytes) or will it stop
> reading after first delimiter(first line).

  The read command doesn't know anything about the stream it is reading from
  so don't expect it to delimit on \n bounderies.  You will have to handle
  that yourself.  For example, it is not uncommon to get a response larger
  than 1024 from a LIST command.

  /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: freeing memory on fatal errors
Date: Sun, 12 Jan 2003 07:31:28 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042385490 25628 171.64.15.80 (12 Jan 2003 15:31:30 GMT)
X-Complaints-To: 
To: Alexander Fontana 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3698


> Suppose our ftpcopy program encounters some error where a prompt exit is a
> reasonable solution (ie disk is full).  Do we need to bother freeing memory
> if the program is just going to exit anyway?

 I've never seen any reason to go through a complicated freeing process
 before exiting, be it from main() or before a call to exit() or abort().
 What you should be concerned with is that you do not have a memory leak
 that grows during execution.

 /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: LIST problem
Date: Sun, 12 Jan 2003 07:38:03 -0800
Lines: 89
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042385884 25666 171.64.15.80 (12 Jan 2003 15:38:04 GMT)
X-Complaints-To: 
To: Man Yu Lui 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3699


> I am also having this problem. I have passive mode in my code, but my LIST
> command still only return directories. I set the transfer to ASCII, then
> issue the PASV command, and connect to the server at the given port, then I
> do the LIST command. However, I am only getting directories back, no files.
> Please help, what else could be wrong?
>
> -myl

 You've probably done all this but just in case...
 - have you verified there are actually files where you are listing?
 - are you printing the buffer you receive from the server or are
   you relying on ftpparse? If you are doing the latter, try printing the
   buffer directly after reading it from the socket.
 - have you tried doing this by hand with telnet? ;-) Open 2 terminals
   telnet by hand to port 21 and issue the raw commands.

 If you are still having problems, I'm going to be online most of
 today so we'll get this ironed out.

 /mc

> "Martin Casado"  wrote in message
> 
> >
> > > Hi
> > > After creating a control connection to the server ftp.stanford.edu, I
> > > tried using LIST command, but LIST is giving me only the listing of
> > > directoried on the server, & no listing of files is obtained,
> >
> > Here is an output I get from LIST at ftp.stanford.edu:
> >
> > class/engre62" is current directory.
> > 250 CWD command successful.
> > 200 Type set to A.
> > 227 Entering Passive Mode (171,64,15,241,249,112)
> > 150 Opening ASCII mode data connection for /bin/ls.
> > total 5765
> > drwxr-xr-x    4 root     root         2048 Nov 22 16:53 .backup
> > -rw-------    1 70448    root          881 Sep 24 09:49 .description
> > -rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_b.TIFF
> > -rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_g.TIFF
> > -rw-r--r--    1 5469     37          98594 Nov 22 16:53 RingNebula_r.TIFF
> > drwxr-xr-x    2 root     root         2048 Nov 27 17:42 WWW
> > drwxr-xr-x    4 70448    root         2048 Sep 16 18:27 geophys112.2002
> > -rw-r--r--    1 5469     37         119032 Sep 27 09:40 hw1data.mat
> > -rw-r--r--    1 5469     37        2160216 Oct 11 12:08 hw3data.mat
> > -rw-r--r--    1 5469     37          47648 Oct 18 11:01 hw4data.mat
> > -rw-r--r--    1 5469     37        2592904 Oct 18 11:01 hw4magdata.mat
> > -rw-r--r--    1 5469     37         651624 Oct 18 11:01 hw4whistler.mat
> > -rw-r--r--    1 5469     37          19872 Oct 25 12:44 hw5data.mat
> > -rw-r--r--    1 5469     37            750 Nov  8 12:41 inklindata
> > -rw-r--r--    1 5469     37           1407 Oct 11 12:08 soil.dat
> >
> > I'm using passive mode LIST and it does list files.  You can always
> > use telnet and PASV mode to verify that the commands are working
> correctly.
> >
> >
> > > When I try using NLST command, it gives proper listing of everythins,
> but
> > > command "LIST" gives me only directory listing
> > > also when I gibe RETR command for a particular file, I get error,
> > > permission denied,
> > > What is the problem?
> >
> > Check the permissions on the file you are trying to get, if you cannot
> > get the file using vanilla ftp then you don't have permissions to the
> file.
> >
> > > Also which directory should I go into in while connecting to
> > > ftp.stanford.edu?, I currently tried going into my own directory
> > > Please let me know
> >
> > That really is up to you .. why don't you get the suffix mat with a
> recursive depth of
> > 2?
> >
> >  ./ftpcopy mat 2 ftp.stanford.edu
> >
> > remember, this is only to test your implementation.
> >
> > regards,
> > /mc
> >
>
>
>

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Martin's "office hours" today
Date: Sun, 12 Jan 2003 07:45:26 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042386328 25809 171.64.15.80 (12 Jan 2003 15:45:28 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3700


 Hi All,

   I've got a lot of hacking to do today so I will be online until
   6:30pm your time.  If you need help with the project, I'll be on irc,
   server irc.freenode.net, channel cs244a.  If you need instructions
   on how to connect, email me directly.  Of course I will be moderating
   the newsgroup as well.

   Cheers,
   /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: test script
Date: Sun, 12 Jan 2003 07:47:44 -0800
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042386465 25824 171.64.15.80 (12 Jan 2003 15:47:45 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3701


> Hi, my project hangs (the server times out) on parts L.1 through L.4 of
> the test script when it executes ../ftpcopy ext 1  But I've tested it with
> localhost and it works fine. Any ideas? Thanks

 That's no good.  I don't know anything about the test script this year, are
 you running on the same host as the test script?  Can you email me the test
 script results?

 /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: question about read command
Date: Sun, 12 Jan 2003 09:15:14 -0800
Lines: 18
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042391775 27688 128.12.186.92 (12 Jan 2003 17:16:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3702


"Martin Casado"  wrote in message

>
> > Hi,
> >
> > For the assignment we can assume that no NVT string is longer than 1024
> > bytes.
>
>  If it is not in the rfc I don't see why you would make this assumption.
>

The assignmnet specifies that they don't have to worry about strings longer
than 1024 bytes.

-Russ


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: PS1, Q4 and Q6
Date: Sun, 12 Jan 2003 09:22:01 -0800
Lines: 32
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042392182 27850 128.12.186.92 (12 Jan 2003 17:23:02 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3703


"Mingying Chen"  wrote in message

> Hi,
>
> I have the following questions about problem set #1:
>
> 1. In problem #4, if the last portion of the file can not fill up the last
> packet to make it P bits long, do we assume there's some kind of padding
> to make up the P bits, or the last packet can be smaller than regular
> ones, or simply assume this situation won't happen?


You can assume the last packet will be padded.


>
> 2. For problem #6, part a, I can only see an answer if we assume the queue
> reaches some stable state in worst case, i.e., the output link drains bits
> fast enough comparing to packets arrival rate so that the length of queue
> remains stable. But since R, C, L and g are given, it is possible that C
> is too slow to remove the packets in time. In this case, the buffer will
> be filled up eventually no matter how large it is. I'm confused. Would you
> please clarify it for me?
>

You want to define the worst case scenario where the queue size is still
stable.

--Russ


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject:  Re: question about read command
Date: Sun, 12 Jan 2003 09:35:05 -0800
Lines: 52
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042392909 28077 171.64.15.80 (12 Jan 2003 17:35:09 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3704

> HI,
>
> That means that I cant use buffered read. I will have to read server
> replies byte by byte till I get "\r\n", there is no conditional read(i.e.
> read till specific pattern), we have to specify a buffer size in read.
>
> So I will have to read the replies byte by byte till you get "\r\n" is
> that right??

 Actually no, that is not correct.  I would suspect that most students will
 choose to read byte-by-byte, but I assure you there is a more elegant and
 efficient way to do this.  I'll give you a hint:

 recv(sockfd,buf,len,MSG_PEEK)

 ;-)
 /mc


>
> Thanks
> Milap
>
>
> On Sun, 12 Jan 2003, Martin Casado wrote:
>
> >
> > > Hi,
> > >
> > > For the assignment we can assume that no NVT string is longer than 1024
> > > bytes.
> >
> >  If it is not in the rfc I don't see why you would make this assumption.
> >
> > >
> > > I had a question though. Consider a case where the response of the server
> > > is in multiple lines and each line is much smaller than 1024 bytes.
> > > If I am not wrong each line is delimited by "\r\n"
> > > Now if I do a read with a buffer size of 1024, will I get multiple lines
> > > in the buffer (beacuse each line is much smaller than 1024 bytes) or the
> > > buffer will contain only the first line delimited by "\r\n".
> > > i.e. will the buffer be filled completely (1024 bytes) or will it stop
> > > reading after first delimiter(first line).
> >
> >   The read command doesn't know anything about the stream it is reading from
> >   so don't expect it to delimit on \n bounderies.  You will have to handle
> >   that yourself.  For example, it is not uncommon to get a response larger
> >   than 1024 from a LIST command.
> >
> >   /mc
>

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Ansi 99
Date: Sun, 12 Jan 2003 18:24:08 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1042395848 29169 171.64.15.99 (12 Jan 2003 18:24:08 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3705

Martin Casado  writes:
>> This was somewhat addressed in the newsgroup from last year, but can we
>> compile our programs with -fstd=iso9899:199x instead of -ansi since C99
>> is the latest ANSI C and coming up on 4 years old?

> If that makes you happy I don't see any problem with it, you might want
> -Wall and -pedantic too (if they aren't already in the makefile, I don't
> have the current assignment source)

> /mc


I have to disagree with Martin on this; please don't.  It makes grading
more difficult; moreover, you won't be able to for the second assignment
anyway, since we substitute other Makefiles during grading that do not include
this flag during compilation.  If you need to use something like snprintf, you
can include the prototype as was suggested in the newsgroup last year.

(Does VC++ support C99 yet?  v6.0 didn't.  So I'd argue that this standard
is still nowhere near as widespread as the older ISO standard is).

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script
Date: Sun, 12 Jan 2003 18:25:40 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1042395940 29191 171.64.15.99 (12 Jan 2003 18:25:40 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3706


>Hi, my project hangs (the server times out) on parts L.1 through L.4 of
>the test script when it executes ../ftpcopy ext 1  But I've tested it with
>localhost and it works fine. Any ideas? Thanks


Can you post the script output for these cases?

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: inter-packet gap
Date: Sun, 12 Jan 2003 23:31:03 +0000 (UTC)
Organization: Stanford University
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic12.stanford.edu
X-Trace: news.Stanford.EDU 1042414263 7559 171.64.15.45 (12 Jan 2003 23:31:03 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3707


Is the inter-packet gap measured from the time the last bit of a packet is sent
to the start of the transmission of the first bit of the next packet?
.

Path: shelby.stanford.edu!saga11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: more test script
Date: Sun, 12 Jan 2003 15:40:47 -0800
Lines: 24
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042414848 7767 171.64.15.141 (12 Jan 2003 23:40:48 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3708

Here is the output from the test script:

Test L.1, using current source tree and build
make
make: Nothing to be done for `all'.

Working dir:
/afs/ir.stanford.edu/users/r/m/rmortam/cs244a/hw1/grading_src/build
Starting local ftpd: cd
/usr/class/cs244a/grading_script/hw1_special_cases;
/usr/class/cs244a/WWW/homeworks/hw1/ftpd_src/wu-ftpd-2.0/bin/ftpd 2>
/afs/ir.stanford.edu/users/r/m/rmortam/cs244a/hw1/grading_src/build/.ftpd_port&
ftpd running on port 53898
Testing special case:  ../ftpcopy ext 1 

L2-L4 is the same except for the port is different because it restarts
ftpd. When the script finishes it reports an error for L1-L4 because the
server timed out. Then I test with a localhost (by running ftpd and ftpcopy on
the same machine) and it works fine.

Thanks again,

Rhea

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: inter-packet gap
Date: Sun, 12 Jan 2003 16:28:08 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042417750 9026 128.12.186.92 (13 Jan 2003 00:29:10 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3709

Yes.  If you think of packets traveling down the wire, the inter-packet gap
is the space between consecutive packets where there is no data.

--Russ

"David Seetapun"  wrote in message

>
> Is the inter-packet gap measured from the time the last bit of a packet is
sent
> to the start of the transmission of the first bit of the next packet?


.

Path: shelby.stanford.edu!saga3.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Re: purify ==> Address Family not supported by protocol family
Date: Sun, 12 Jan 2003 17:13:23 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042420404 10192 171.64.15.133 (13 Jan 2003 01:13:24 GMT)
X-Complaints-To: 
To: Martin Casado 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3710

> > My ftpcopy implements most of the tasks, but it doesn't run with purify.
> >
> > Upon trying to "connect" to the socket for the FTP control connection, I
> > get error #124 -- "Address family not supported by protocol family".
>
>  I haven't seen this occur before.  Could you, perhaps, strip your
>  code down to a simple 20-30 line main routine and see if you have the
>  same problem?  Is anyone else seeing this?
I discovered the problem last night: I wasn't always initializing the
datastructure correctly. Using purify happened to provide some (other)
garbage in that location that triggered it.


> > 	//perror("Error connecting: Address family not supported by protocol family");
>  Is this really your perror() line? Or did you just type that to illustrate the
>  error bieng reported by perror()?
An attempt at the latter. :)

.

Path: shelby.stanford.edu!saga21.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: -ansi warning
Date: Sun, 12 Jan 2003 17:23:54 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042421035 10471 171.64.15.151 (13 Jan 2003 01:23:55 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3711

I get the following warning during compilation:

client.c:236: warning: implicit declaration of function `fdopen'
client.c:236: warning: assignment makes pointer from integer without a
              cast

However if I remove the -ansi flag, I don't get any warning. Is "fdopen"
nor supported?

My program runs fine though.


thanks,
Nishant

.

Path: shelby.stanford.edu!not-for-mail
From: Aseem Sharma 
Newsgroups: su.class.cs244a
Subject: PS1 Q7 (a)
Date: Sun, 12 Jan 2003 17:24:01 -0800
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga5.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042421041 10474 171.64.15.135 (13 Jan 2003 01:24:01 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3712

Hi Guys,

I'm still confused about D(t) and S(t). Is my understanding correct that
depature rate depends only on the output link (considering there is data
to send) and S(t) is servicing input like doing something other than
sending it ? if my output link is 1b/sec and input is 1kb/s, then D(t) =
1b/sec. If so, then D(t) is something of a const like A(t). Something
that was not clear from the slides either. Does service time include
time to send out ?

Aseem
.

Path: shelby.stanford.edu!saga3.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: empty file test
Date: Sun, 12 Jan 2003 18:37:06 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042425429 12366 171.64.15.133 (13 Jan 2003 02:37:09 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3713

I tried my ftpcopy file on a zero byte file. It seemed to copy correctly.
But it fails the grading script, exiting with errno set to "Permission
denied". and fails upon calling "open" to open a file for writing.

Thoughts? Does anybody know what test L.1 is doing?



Test L.1 [out of 0.5]
Checks that ftpcopy transfers zero byte file correctly.

Results:  NOT OK

Incorrect program status code 256 (exit code 1).  Program output:
perror: Permission denied

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: PS1, Q4 and Q6
Date: Mon, 13 Jan 2003 03:21:14 +0000 (UTC)
Organization: Stanford University
Lines: 39
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: epic12.stanford.edu
X-Trace: news.Stanford.EDU 1042428074 13660 171.64.15.45 (13 Jan 2003 03:21:14 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3714


In article 
 "Russell Greene"  writes:
> 
> "Mingying Chen"  wrote in message
> 
> > Hi,
> >
> > I have the following questions about problem set #1:
> >
> > 1. In problem #4, if the last portion of the file can not fill up the last
> > packet to make it P bits long, do we assume there's some kind of padding
> > to make up the P bits, or the last packet can be smaller than regular
> > ones, or simply assume this situation won't happen?
> 
> 
> You can assume the last packet will be padded.
> 
> 
> >
> > 2. For problem #6, part a, I can only see an answer if we assume the queue
> > reaches some stable state in worst case, i.e., the output link drains bits
> > fast enough comparing to packets arrival rate so that the length of queue
> > remains stable. But since R, C, L and g are given, it is possible that C
> > is too slow to remove the packets in time. In this case, the buffer will
> > be filled up eventually no matter how large it is. I'm confused. Would you
> > please clarify it for me?
> >
> 
> You want to define the worst case scenario where the queue size is still
> stable.

Does this mean you want an condition on R, C, L, g where the queue size is stable
and the least value of that queue size?

> 
> --Russ
> 
> 
.

Path: shelby.stanford.edu!not-for-mail
From: "Bina Vasavda" 
Newsgroups: su.class.cs244a
Subject: startup
Date: Sun, 12 Jan 2003 20:01:52 -0800
Lines: 27
Distribution: su
Message-ID: 
NNTP-Posting-Host: ev-01-hos4d.stanford.edu
X-Trace: news.Stanford.EDU 1042430513 14811 128.12.154.59 (13 Jan 2003 04:01:53 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3715

Hi,
When I try to use USER and PASS to login to the ftp server, the USER command
is successful, but the PASS command is unsucessful.  I am creating the email
correctly. Here is a printout of the server replies, plus the USER and PASS
commands.  Anyone have any ideas?  When I try the same USER and PASS
commands by manually telnetting to ftp.stanford.edu 21, they work, so I'm
not sure what's going on.
Thanks!
Bina

220-------------------------------------------------------------------------
----
220-    Abuse of this facility may be considered violation of Federal or
------
220-    California law or the policies of Stanford University.  If you have
220-    questions regarding this policy please send mail to
220-    
220-------------------------------------------------------------------------
----
220-
220 ftp1.Stanford.EDU FTP server ready.
USER anonymous
331 Guest login ok, send your complete e-mail address as password.
PASS 
530 Please login with USER and PASS.


.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: startup
Date: Sun, 12 Jan 2003 20:10:31 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042431026 15183 128.12.72.54 (13 Jan 2003 04:10:26 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3716

Bina Vasavda wrote:
> Hi,
> When I try to use USER and PASS to login to the ftp server, the USER command
> is successful, but the PASS command is unsucessful.  I am creating the email
> correctly. Here is a printout of the server replies, plus the USER and PASS
> commands.  Anyone have any ideas?  When I try the same USER and PASS
> commands by manually telnetting to ftp.stanford.edu 21, they work, so I'm
> not sure what's going on.
> Thanks!
> Bina
> 
> 220 ftp1.Stanford.EDU FTP server ready.
> USER anonymous
> 331 Guest login ok, send your complete e-mail address as password.
> PASS 
> 530 Please login with USER and PASS.
> 

Are you sure you're sending the string with correct terminating 
characters?  (the CR/LF)  Having just fixed the same thing myself...

-Kevin

.

Path: shelby.stanford.edu!not-for-mail
From: Siddharth Joshi 
Newsgroups: su.class.cs244a
Subject: Re: PS1 Q7 (a)
Date: Sun, 12 Jan 2003 21:01:24 -0800
Organization: EE, Stanford University
Lines: 61
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine18.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042434085 16856 171.64.15.83 (13 Jan 2003 05:01:25 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3717

Yes it is confusing as the notes never mention S(t).

Well i think this a probable explaination. 

that the service process will process if it has packets available.
So as long as S(t) > A(t) the packets would be delivered .

As Q(t) = A(t) //meaning that there has to be an input packet to go on
output.


Well seems quite vague because consider the following senario of a
burst.

A(t) = 0  0<= t <10

A(t) = 100 t = 10 (you may speard interval over a period of some seconds
, I have put an impulse burst of 100 packets)

A(t) = 0 t>10

say s(t) = 10t;

Basically at t = 10 (or 10+) you see A(t) = 100 and S(t) = 100. So you
infer Q(t)  = 100

But service process should be a rate because it seems that the service
process became infinitely fast (thats why I used impulse burst) and
processed 100 packets in no time (or zero time)  which i don't think
makes sense. 

I am waiting for Tue lecture also and the TA reply and if the prof.
could discuss this issue in class.

My socket is blocked on either of these rreplies!!

May be this helps.

Bye
Siddharth Joshi








Aseem Sharma wrote:
> 
> Hi Guys,
> 
> I'm still confused about D(t) and S(t). Is my understanding correct that
> depature rate depends only on the output link (considering there is data
> to send) and S(t) is servicing input like doing something other than
> sending it ? if my output link is 1b/sec and input is 1kb/s, then D(t) =
> 1b/sec. If so, then D(t) is something of a const like A(t). Something
> that was not clear from the slides either. Does service time include
> time to send out ?
> 
> Aseem
.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: -ansi warning
Date: Sun, 12 Jan 2003 21:23:07 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042435389 17750 171.64.15.80 (13 Jan 2003 05:23:09 GMT)
X-Complaints-To: 
To: Nishant Verman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3718


> I get the following warning during compilation:
>
> client.c:236: warning: implicit declaration of function `fdopen'
> client.c:236: warning: assignment makes pointer from integer without a
>               cast
>
> However if I remove the -ansi flag, I don't get any warning. Is "fdopen"
> nor supported?
>
> My program runs fine though.

  You are not including the header for fdopen() but it is in libc so
  it is found at link time.

  #include <stdio.h> should fix the problem.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Alexander Fontana" 
Newsgroups: su.class.cs244a
Subject: test script can't submit
Date: Sun, 12 Jan 2003 22:19:47 -0800
Lines: 40
Distribution: su
Message-ID: 
NNTP-Posting-Host: afontana.stanford.edu
X-Trace: news.Stanford.EDU 1042439026 19365 128.12.101.143 (13 Jan 2003 06:23:46 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3719

Hi,

I just tried to run the test script for the first time and got an error that
it can't submit (pasted below).  What could be causing this?  I've already
been assigned a TA, but I can't think of anything else that the script might
not like.

Thanks,
Alex

elaine32:~/cs244a/hw1/ftpclient> /usr/class/cs244a/bin/test_code.pl hw1 *
Creating submission tarball...
Makefile
ftpcopy
ftpcopy.purify
ftpcopy.purify.pv
ftpparse.c
ftpparse.h
main.c

Starting...
Test B, new source tree required, extracting into grading_src/build...
Makefile
ftpcopy
ftpcopy.purify
ftpcopy.purify.pv
ftpparse.c
ftpparse.h
main.c

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 5 test attempts applies (from Jan 1 onwards).
You've used 0 test attempt(s) so far today.
Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN> line
1.
couldn't submit code for testing
elaine32:~/cs244a/hw1/ftpclient>


.

Path: shelby.stanford.edu!not-for-mail
From: "Andrew Narver" 
Newsgroups: su.class.cs244a
Subject: question on store-and-forward routers
Date: Sun, 12 Jan 2003 23:42:58 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: didgeridoo.stanford.edu
X-Trace: news.Stanford.EDU 1042443779 23041 128.12.71.38 (13 Jan 2003 07:42:59 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3720

In a store-and-forward router, does the buffer store the entire packet until
all of it is sent or does the buffer get slowly cleared as individual bits
get sent?


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: empty file test
Date: Mon, 13 Jan 2003 07:51:14 +0000 (UTC)
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1042444274 23295 171.64.15.101 (13 Jan 2003 07:51:14 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3721


>I tried my ftpcopy file on a zero byte file. It seemed to copy correctly.
>But it fails the grading script, exiting with errno set to "Permission
>denied". and fails upon calling "open" to open a file for writing.

>Thoughts? Does anybody know what test L.1 is doing?

>Test L.1 [out of 0.5]
>Checks that ftpcopy transfers zero byte file correctly.

>Results:  NOT OK

>Incorrect program status code 256 (exit code 1).  Program output:
>perror: Permission denied


L.1 just verifies that you download a zero-byte file correctly; this
test has worked for other students.  The program should be creating the
new file in a directory owned by you, so permissions shouldn't be a problem.
Could you try deleting the grading_src/ directory in your source directory
(it's created by the test script; all program output/temporary results
go in there), and see if that has any effect?

.

Path: shelby.stanford.edu!not-for-mail
From: Fritz Budiyanto 
Newsgroups: su.class.cs244a
Subject: purify question
Date: Mon, 13 Jan 2003 08:03:53 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga18.stanford.edu
X-Trace: news.Stanford.EDU 1042445033 23485 171.64.15.148 (13 Jan 2003 08:03:53 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3722

Hi,

about the purify grading, should we make sure all memory deallocated in
case of an error?

e.g.


int
main()
{
   char *c = strdup("foo");

   if (error == 1) return -1; /* should we responsible to deallocate c
                                 when error occur ? */
}

thanks
Fritz


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: purify question
Date: Mon, 13 Jan 2003 08:09:54 +0000 (UTC)
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1042445394 24278 171.64.15.101 (13 Jan 2003 08:09:54 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3723

Fritz Budiyanto  writes:

>Hi,

>about the purify grading, should we make sure all memory deallocated in
>case of an error?

>e.g.


>int
>main()
>{
>   char *c = strdup("foo");

>   if (error == 1) return -1; /* should we responsible to deallocate c
>                                 when error occur ? */
>}

>thanks
>Fritz


Yep.
.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS1, Q4 and Q6
Date: Mon, 13 Jan 2003 08:13:17 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1042445597 24750 171.64.15.101 (13 Jan 2003 08:13:17 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3724


>Does this mean you want an condition on R, C, L, g where the queue size is stable
>and the least value of that queue size?

Yeah, pretty much that's what parts (a) and (b) are asking together.  (As
you work out the question, it'll probably make more sense than the initial
reading would suggest).  Assume g is such that we have stability (part b
asks you to find the smallest such g), and then find the resulting minumum B
required for stability to hold.
.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS1 Q7 (a)
Date: Mon, 13 Jan 2003 08:17:53 +0000 (UTC)
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1042445873 24797 171.64.15.101 (13 Jan 2003 08:17:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3725

Aseem Sharma  writes:

>Hi Guys,

>I'm still confused about D(t) and S(t). Is my understanding correct that
>depature rate depends only on the output link (considering there is data
>to send) and S(t) is servicing input like doing something other than
>sending it ? if my output link is 1b/sec and input is 1kb/s, then D(t) =
>1b/sec. If so, then D(t) is something of a const like A(t). Something
>that was not clear from the slides either. Does service time include
>time to send out ?

>Aseem


In problem 7, A(t), D(t), and S(t) are definitely *not* rates, as the units
should make clear.

Have you checked last year's newsgroup postings about this problem in
particular, and the fluid models in general?  (You can just search for the
string "A(t)" in fact).  This was a source of common confusion at that time,
and there was quite a bit posted then about almost this very question.
Please let us know if any points from those answers require further
elaboration or clarification.

.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: question on store-and-forward routers
Date: Mon, 13 Jan 2003 08:25:50 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1042446350 24976 171.64.15.101 (13 Jan 2003 08:25:50 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3726

"Andrew Narver"  writes:

>In a store-and-forward router, does the buffer store the entire packet until
>all of it is sent or does the buffer get slowly cleared as individual bits
>get sent?


It would seem likely to be a simpler implementation to keep the entire packet
around until it's all been sent, and I don't think you'd gain anything by
trying to reclaim those bits more quickly, but I can't think of a particular
reason why that would be strictly required.
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: question on store-and-forward routers
Date: Mon, 13 Jan 2003 15:21:17 +0000 (UTC)
Organization: Stanford University
Lines: 20
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: epic10.stanford.edu
X-Trace: news.Stanford.EDU 1042471277 5422 171.64.15.43 (13 Jan 2003 15:21:17 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3727


In article 
  (Matthew Jonathan Holliman) writes:
> "Andrew Narver"  writes:
> 
> >In a store-and-forward router, does the buffer store the entire packet until
> >all of it is sent or does the buffer get slowly cleared as individual bits
> >get sent?
> 
> 
> It would seem likely to be a simpler implementation to keep the entire packet
> around until it's all been sent, and I don't think you'd gain anything by
> trying to reclaim those bits more quickly, but I can't think of a particular
> reason why that would be strictly required.

Which alternative seems to make a difference for the minimum buffer size as
there seems to be times when a new packet is arriving while an old one is
in the process of being forwarded. If the bits that are cleared as the
old one is forwarded are not reclaimed this would suggest a larger buffer
is required. Is this correct?
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Handout #3 slide 43
Date: Mon, 13 Jan 2003 16:41:13 +0000 (UTC)
Organization: Stanford University
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic10.stanford.edu
X-Trace: news.Stanford.EDU 1042476073 7553 171.64.15.43 (13 Jan 2003 16:41:13 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3728


It seems to me the example in the slide is not a store and forward router since bits are
drained before the 100 bit train has been fully stored. Is this correct?
.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: testing script/Purify
Date: Mon, 13 Jan 2003 20:50:45 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1042491045 17385 171.64.15.111 (13 Jan 2003 20:50:45 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3729


A couple of people asked why the test script wasn't picking up their .purify
or purify.output files, and was thus failing them on one or two of the later
test cases.  So here's some clarification.

The script takes whatever files you indicate--source files, Makefiles, etc.--
and just copies them to a temporary directory (grading_src in your current
working directory), where it runs all the tests.  So if you omit something
like purify.output, it just ignores it.

.

Path: shelby.stanford.edu!saga16.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: IMAGE representation
Date: Mon, 13 Jan 2003 15:54:03 -0800
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042502045 24005 171.64.15.146 (13 Jan 2003 23:54:05 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3730

If I specify Represenation Type as image [ TYPE I] the servers replies
don't have the kTelnetEOF character anymore.

Do we need to use image type or is the default fine?

nishant





.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: byte order problem for hw1
Date: Mon, 13 Jan 2003 17:23:11 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1042507343 27526 128.12.195.69 (14 Jan 2003 01:22:23 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3731

In review session the functions htonl(), htons(), htohl() and htohs() are
discussed. I could have missed the point but where in hw1 may we need to use
these functions?

-myl


.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: byte order problem for hw1
Date: Tue, 14 Jan 2003 02:05:53 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1042509953 29029 171.64.15.111 (14 Jan 2003 02:05:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3732


>In review session the functions htonl(), htons(), htohl() and htohs() are
>discussed. I could have missed the point but where in hw1 may we need to use
>these functions?


The socket calls such as connect() expect parameters in the provided
address structures (e.g. port) to be passed in network byte order.
If you look at the code in Stevens, you'll notice this in many of his
examples.

.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: IMAGE representation
Date: Tue, 14 Jan 2003 02:08:15 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1042510095 29196 171.64.15.111 (14 Jan 2003 02:08:15 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3733


>If I specify Represenation Type as image [ TYPE I] the servers replies
>don't have the kTelnetEOF character anymore.

>Do we need to use image type or is the default fine?


Since the RFC specifies the default is ASCII mode, which is definitely
not fine for downloading files, no.  Be careful about switching between
ASCII and IMAGE modes at the right times.  I'd also recommend looking
through last year's newsgroup, as I recall this being a common source of
confusion for people then.

.

Path: shelby.stanford.edu!cardinal5.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: timeout
Date: Mon, 13 Jan 2003 18:20:28 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: cardinal5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042510830 29648 171.64.15.253 (14 Jan 2003 02:20:30 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3734

while running on ./ftpcopy mif 5 ftp.slac.stanford.edu in directory /doc,
my ftpcopy times out.

It worked a day or two ago, but I haven't changed the code. Should I
assume that this is a problem on my part (perhaps my code isn't efficient
enough?) or not worry about such a transient error?

 warning:  ftpcopy
failed with exit code 16777215 (waitpid status -1) program output:
***Timeout expired during grading
Program output:

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: timeout
Date: Tue, 14 Jan 2003 06:42:33 +0000 (UTC)
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1042526553 8591 171.64.15.80 (14 Jan 2003 06:42:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3735


>while running on ./ftpcopy mif 5 ftp.slac.stanford.edu in directory /doc,
>my ftpcopy times out.

>It worked a day or two ago, but I haven't changed the code. Should I
>assume that this is a problem on my part (perhaps my code isn't efficient
>enough?) or not worry about such a transient error?

> warning:  ftpcopy
>failed with exit code 16777215 (waitpid status -1) program output:
>***Timeout expired during grading
>Program output:


Some students' code still works pretty quickly on this server, so I'd suggest
double-checking this (although I'm not sure what would have changed).  The
timeout is set for three minutes, as I recall, which should be more than
enough time.

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script can't submit
Date: Tue, 14 Jan 2003 07:01:15 +0000 (UTC)
Lines: 47
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1042527675 9137 171.64.15.80 (14 Jan 2003 07:01:15 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3737

>I just tried to run the test script for the first time and got an error that
>it can't submit (pasted below).  What could be causing this?  I've already
>been assigned a TA, but I can't think of anything else that the script might
>not like.

>Thanks,
>Alex

>elaine32:~/cs244a/hw1/ftpclient> /usr/class/cs244a/bin/test_code.pl hw1 *
>Creating submission tarball...
>Makefile
>ftpcopy
>ftpcopy.purify
>ftpcopy.purify.pv
>ftpparse.c
>ftpparse.h
>main.c

>Starting...
>Test B, new source tree required, extracting into grading_src/build...
>Makefile
>ftpcopy
>ftpcopy.purify
>ftpcopy.purify.pv
>ftpparse.c
>ftpparse.h
>main.c

>Can't find a matching key for this test run.
>Would you like to generate a new one?  (y/n):  y
>Daily quota of 5 test attempts applies (from Jan 1 onwards).
>You've used 0 test attempt(s) so far today.
>Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN> line
>1.
>couldn't submit code for testing
>elaine32:~/cs244a/hw1/ftpclient>

The problem seems to be caused by submitting a binary file(s) (e.g.
ftpcopy.purify, ftpcopy, etc).  I'm not sure exactly why the script
chokes on this--the reason may lie somewhere in the innards of
Perl--but perhaps zero bytes in there confuse the code at some point.
If you stick to just submitting source files, you should be okay
I think.

I'll add a check in the script wrapper to try and prevent this in case
people forget!

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: ps1 q6
Date: Tue, 14 Jan 2003 00:39:23 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1042533511 12514 128.12.195.69 (14 Jan 2003 08:38:31 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3738

For problem 6, do we need to include the inter-packet gap g on the output
link? It seems to me that with R > C, if we have the same gap on the output,
there is no way for the buffer to not overflow eventually in the worst case
scenario where packets are arriving continuously separated only the gaps.

-myl


.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Handout #3 slide 43
Date: Tue, 14 Jan 2003 11:52:17 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042573934 2337 171.64.74.37 (14 Jan 2003 19:52:14 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3739

David,

yes, it uses the fluid model from slide 41 in which you don't worry 
about packets. It's actually still a pretty good model for 
store-and-forward routers as the buffer memory is typically in the 
1000's packets.

   Guido

David Seetapun wrote:
> It seems to me the example in the slide is not a store and forward router since bits are
> drained before the 100 bit train has been fully stored. Is this correct?

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: ps1 q6
Date: Tue, 14 Jan 2003 11:55:26 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042574122 2368 171.64.74.37 (14 Jan 2003 19:55:22 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
X-Priority: 3)
Xref: shelby.stanford.edu su.class.cs244a:3740

You can assume no gap on the output link. If the gap was the same the 
buffer would overflow.

   Guido

--

For problem 6, do we need to include the inter-packet gap g on the output
link? It seems to me that with R > C, if we have the same gap on the output,
there is no way for the buffer to not overflow eventually in the worst case
scenario where packets are arriving continuously separated only the gaps.

-myl


.

Path: shelby.stanford.edu!not-for-mail
From: "Noh, Jeonghun" 
Newsgroups: su.class.cs244a
Subject: PS1 Q8
Date: Tue, 14 Jan 2003 13:40:41 -0800
Organization: Stanford. EE
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab4081e1.stanford.edu
X-Trace: news.Stanford.EDU 1042580518 6634 171.64.129.225 (14 Jan 2003 21:41:58 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3741

For 8(a), given the only constraint for the arrival process is that no more
than (sigma+lo*tau) bits in any interval of duration tau,

I think the maximum average rate should converge to some value, because
sigma and lo are constants and we can make tau as big as possible.

Did I get it right?

--
*********************************
Jeonghun Noh
Dept. of Electrical Engineering
Stanford University
Tel : 1-650-497-6665

*********************************


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS1 Q8
Date: Tue, 14 Jan 2003 21:52:25 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1042581145 7001 171.64.15.115 (14 Jan 2003 21:52:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3742


>For 8(a), given the only constraint for the arrival process is that no more
>than (sigma+lo*tau) bits in any interval of duration tau,

>I think the maximum average rate should converge to some value, because
>sigma and lo are constants and we can make tau as big as possible.

>Did I get it right?

Yes, we're looking for a long-term average.

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: question on store-and-forward routers
Date: Tue, 14 Jan 2003 22:05:48 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1042581948 7479 171.64.15.115 (14 Jan 2003 22:05:48 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3743

>> >In a store-and-forward router, does the buffer store the entire packet until
>> >all of it is sent or does the buffer get slowly cleared as individual bits
>> >get sent?
>> 
>> 
>> It would seem likely to be a simpler implementation to keep the entire packet
>> around until it's all been sent, and I don't think you'd gain anything by
>> trying to reclaim those bits more quickly, but I can't think of a particular
>> reason why that would be strictly required.

>Which alternative seems to make a difference for the minimum buffer size as
>there seems to be times when a new packet is arriving while an old one is
>in the process of being forwarded. If the bits that are cleared as the
>old one is forwarded are not reclaimed this would suggest a larger buffer
>is required. Is this correct?

Okay, I see what you're asking--yes, this is correct.  For simplicity, you
can just assume bit-by-bit clearing.  (But if you've already done it the
other way, as long as you clearly state your assumptions that's fine too).
Sorry for the confusion.

.

Path: shelby.stanford.edu!not-for-mail
From: "Noh, Jeonghun" 
Newsgroups: su.class.cs244a
Subject: For prob #7. Q(t)_bar & d(t)
Date: Tue, 14 Jan 2003 17:44:40 -0800
Organization: Stanford. EE
Lines: 24
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab4081e1.stanford.edu
X-Trace: news.Stanford.EDU 1042595157 15988 171.64.129.225 (15 Jan 2003 01:45:57 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3744

For prob #7)
1. The average queue occupancy
Is it correct to say that the average queue occupancy is Q(t)_bar(or
Exp[Q(t)]), not Exp[Q(t)|Q(t)>0]?

So for Prob 7, like the slide #43 in HO#3, X(t)_bar is the overall average
including the queue's idle time. Correct idea?

2. d(t) for each bit in the queue
This d(t) is only related to the bits in the queue, so we can assume that
d(t) has nothing to do with idle time. Is it right?

Thanks.

--
*********************************
Jeonghun Noh
Dept. of Electrical Engineering
Stanford University
Tel : 1-650-497-6665

*********************************


.

Path: shelby.stanford.edu!cardinal2.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: ps1 q6
Date: Tue, 14 Jan 2003 19:33:06 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: cardinal2.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042601588 19554 171.64.15.250 (15 Jan 2003 03:33:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3745

the question says only one input link is active....does this mean that
only one input link is active at a particular time or effectively we have
only one input link for problem analysis?

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: For prob #7. Q(t)_bar & d(t)
Date: Tue, 14 Jan 2003 19:41:09 -0800
Lines: 36
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042602061 19735 171.64.74.37 (15 Jan 2003 03:41:01 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3746

> 1. The average queue occupancy
> Is it correct to say that the average queue occupancy is Q(t)_bar(or
> Exp[Q(t)]), not Exp[Q(t)|Q(t)>0]?

Yes, correct.

> So for Prob 7, like the slide #43 in HO#3, X(t)_bar is the overall average
> including the queue's idle time. Correct idea?

Yes, average queue length includes times where the queue is empty.

> 2. d(t) for each bit in the queue
> This d(t) is only related to the bits in the queue, so we can assume that
> d(t) has nothing to do with idle time. Is it right?

Not sure what you mean with "has nothing to do with". d(t) is a function 
of t (not an average). If a packet at time t arrives and immediately 
departs d(t)=0. d(t) applies to packets arriving at time t. If there is
no packet at time t it is undefined.

   Guido

> 
> Thanks.
> 
> --
> *********************************
> Jeonghun Noh
> Dept. of Electrical Engineering
> Stanford University
> Tel : 1-650-497-6665
> 
> *********************************
> 
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: ps1 q6
Date: Tue, 14 Jan 2003 19:42:12 -0800
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042602124 19735 171.64.74.37 (15 Jan 2003 03:42:04 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3747

the latter, consider only one link for this problem.

Sandhya Kunnatur wrote:
> the question says only one input link is active....does this mean that
> only one input link is active at a particular time or effectively we have
> only one input link for problem analysis?
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: FAQ's and Clarifications...
Date: Tue, 14 Jan 2003 20:10:58 -0800
Lines: 32
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042603850 21458 171.64.74.37 (15 Jan 2003 04:10:50 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3748

Everyone,

here are a few follow-ups to office hours, FAQ's and clarifications

1) Store and forward router - Some people asked if when a packet is
    sent, the buffer memory is freed bit-by-bit or only once the
    whole packet is sent. We prefer you to use bit-by-bit freeing.
    However if (and only if) you *CLEARLY* state your assumptions
    either assumption is correct.

2) Some people misunderstood the definition of the interval of
    length tay in problem 8. What the constraint means is that for
    any possible interval (t1,t2) where t2-t1=tau (tau>0) the
    condition must hold. e.g. for the intervals (1,3) or (1,7) or
    (5,8). The processes do not have to be periodic. For a set
    of processes the constraint must hold for any possible
    interval.

3) For problem 9 (c) some people pointed out that there are
    several possible combinations of minima. What we mean
    is that you should first find the minumum data rate and
    then the minimum buffer that is necessary for this data
    rate. Buffer size zero and really fast data rate is not
    a correct answer.

4) For programming assignment #1 you can (but don't have to)
    use passive mode. Your choice.

Cheers,

   Guido

.

Path: shelby.stanford.edu!not-for-mail
From: "Keith Simmons" 
Newsgroups: su.class.cs244a
Subject: 7b
Date: Wed, 15 Jan 2003 01:52:21 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: ksimmons.stanford.edu
X-Trace: news.Stanford.EDU 1042624342 1630 128.12.105.123 (15 Jan 2003 09:52:22 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3749

 In the example about queue occupancy given in lecture, Q(t) seems to only
be valid for integer values.  For question 7b, do we need to write equations
which are valid for fractional times, or can we write equations only
pertinent for integer values?  Thanks.


.

Path: shelby.stanford.edu!elaine29.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: ps1 prob 7b
Date: Wed, 15 Jan 2003 08:10:27 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine29.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042647028 10896 171.64.15.104 (15 Jan 2003 16:10:28 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3750

should the time 't' be in seconds or in milliseconds?
i.e. what granulariy of t should be supported by our equations?
thanks,
Sandhya

.

Path: shelby.stanford.edu!elaine27.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 7b
Date: Wed, 15 Jan 2003 20:22:01 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine27.stanford.edu
X-Trace: news.Stanford.EDU 1042662121 19575 171.64.15.102 (15 Jan 2003 20:22:01 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3751

"Keith Simmons"  writes:

> In the example about queue occupancy given in lecture, Q(t) seems to only
>be valid for integer values.  For question 7b, do we need to write equations
>which are valid for fractional times, or can we write equations only
>pertinent for integer values?  Thanks.

Your equations should hold for any time t.
.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: PS1. 9.c.ii
Date: Wed, 15 Jan 2003 12:58:24 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1042664126 20952 128.12.184.109 (15 Jan 2003 20:55:26 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:3752

"Two processes are out of phase with respect to each other"

Does this mean that the bursts on the two links do not overlap at all? In
that case, g >= BP/R. Also, because the middle of a burst should coincide
with the middle of an idle period, g = BP/R.
Is my understanding correct?



.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: ps1 prob 7b
Date: Wed, 15 Jan 2003 18:20:56 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042683649 2820 171.64.74.37 (16 Jan 2003 02:20:49 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3753

For future problem sets: Your equations should contain units and thus 
work with seconds, minutes or hours.

e.g. not

   f(t) = 10 * t

but instead

   f(t) = 10 MBit/s * t


Sandhya Kunnatur wrote:
> should the time 't' be in seconds or in milliseconds?
> i.e. what granulariy of t should be supported by our equations?
> thanks,
> Sandhya
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: PS1. 9.c.ii
Date: Wed, 15 Jan 2003 18:26:02 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042683955 2995 171.64.74.37 (16 Jan 2003 02:25:55 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3754

I guess it's past the deadline but anyway:

Yes you can assume the bursts are instantaneous and don't overlap. If 
you have a seperate case for overlapping bursts that will make the whole 
thing more complicated but it is correct as well.

   Guido

Pavan wrote:
> "Two processes are out of phase with respect to each other"
> 
> Does this mean that the bursts on the two links do not overlap at all? In
> that case, g >= BP/R. Also, because the middle of a burst should coincide
> with the middle of an idle period, g = BP/R.
> Is my understanding correct?
> 
> 
> 

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: problem testing code
Date: Wed, 15 Jan 2003 21:17:24 -0800
Lines: 60
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042694247 8550 171.64.15.69 (16 Jan 2003 05:17:27 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3755

hi all!

I was trying to test my code following the instruction on webpage but had
no luck so far. the terminal output is pasted below. it seems like a
failed test also counts toward our quota (?).

anyone having similar issues?

also, referring to the warning message below, that line is

sprintf(buf, "TYPE %c\r\n", temp);

where "temp" is a "char *". does anyone know how to fix the warning?
according to ANSI C, "%c" is what we use to print a single char...

finally, the webpage mentioned ".purify" file, how do we generate it? I
have a ".pure" file in the working directory but it's always blank

thanks!
Tan

****************************************************************
elaine4:~/cs214/testftp/TEST> /usr/class/cs244a/bin/test_code.pl hw1
Makefile *.c *.h purify.output
Creating submission tarball...
Makefile
ftpcp.c
ftpparse.c
utils.c
ftpparse.h
utils.h
purify.output

Starting...
Test B, new source tree required, extracting into grading_src/build...
Makefile
ftpcp.c
ftpparse.c
utils.c
ftpparse.h
utils.h
purify.output

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 5 test attempts applies (from Jan 1 onwards).
You've used 1 test attempt(s) so far today.
make
gcc -g -O0 -ansi -Wall -DSOLARIS  -c ftpcp.c
gcc -g -O0 -ansi -Wall -DSOLARIS  -c utils.c
utils.c: In function `TYPEcmd':
utils.c:250: warning: int format, pointer arg (arg 3)
gcc -g -O0 -ansi -Wall -DSOLARIS  -c ftpparse.c
gcc -g -O0 -ansi -Wall -DSOLARIS  -o ftpcp  ftpcp.o utils.o ftpparse.o
-lsocket -lnsl -lgen

No executable ./ftpcopy found!
(wd=/afs/ir.stanford.edu/users/w/w/wwtgao/cs214/testftp/TEST/grading_src/build)
couldn't submit code for testing

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Re: problem testing code
Date: Wed, 15 Jan 2003 21:56:51 -0800
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042696613 9653 171.64.15.69 (16 Jan 2003 05:56:53 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3756

hi again,

never mind. I changed the file names from "ftpcp" to "ftpcopy" and it sort
of worked. the questions now are:

1. is there any way to save the testing results in a TEXT file for viewing
(since the scroll bar does not allow going back very far) ?
2. a lot of tests just showed "Results: NOT TESTED", any clue what's going
on here?
3. how do we interpret our scores (at least according to the test script)?

thanks!
Tan

.

Path: shelby.stanford.edu!elaine38.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: problem testing code
Date: Thu, 16 Jan 2003 08:24:08 +0000 (UTC)
Lines: 26
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine38.stanford.edu
X-Trace: news.Stanford.EDU 1042705448 14683 171.64.15.113 (16 Jan 2003 08:24:08 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3757


>1. is there any way to save the testing results in a TEXT file for viewing
>(since the scroll bar does not allow going back very far) ?

script output-file
test_code.pl hw1 ...
exit the shell to end the script session

>2. a lot of tests just showed "Results: NOT TESTED", any clue what's going
>on here?

If this happened for the Purify test cases, check that you've run the
purify environment setup script described in the FAQ.  Some other test
cases may also be dependent on prior ones being successful, so if an
earlier test failed, the later one cannot be tested.  Other than that,
I can't answer without seeing output from your particular test run.

>3. how do we interpret our scores (at least according to the test script)?

If you receive "NOT OK" or "SOMEWHAT OK" for a test, assume you lost the
number of points for that test case.

Also a reminder:  keep in mind that the script tests only against a small
set of servers; during actual grading, we may test against other sites.
So be sure to test your program manually as well.

.

Path: shelby.stanford.edu!not-for-mail
From: "Neil Daswani" 
Newsgroups: su.class.cs244a
Subject: Permissions Denied for a directory
Date: Thu, 16 Jan 2003 02:43:43 -0800
Organization: Stanford University
Lines: 21
Distribution: su
Message-ID: 
Reply-To: "Neil Daswani" 
NNTP-Posting-Host: dn800cbe06.stanford.edu
X-Trace: news.Stanford.EDU 1042713900 18336 128.12.190.6 (16 Jan 2003 10:45:00 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4133.2400
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
Xref: shelby.stanford.edu su.class.cs244a:3758

Dear TAs,

If our ftpcopy program is doing a recursive copy from a server, and it comes
across a *directory* for which the anonymous user does not have the
permissions to access, should we ignore the directory similar to the way in
which we handle files whose permissions we do not have, or should we halt
the program execution and report an error?

I'd imagine that it might be nice to simply ignore such directories,
especially since some of the FTP servers we were told to test against have
directories which user anonymous does not have permisssions to, but us know
what your official position on this is.

Thanks,

Neil Daswani
http://www.stanford.edu/~daswani/




.

Path: shelby.stanford.edu!not-for-mail
From: "Bina Vasavda" 
Newsgroups: su.class.cs244a
Subject: script days
Date: Thu, 16 Jan 2003 14:27:57 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: ev-01-hos4d.stanford.edu
X-Trace: news.Stanford.EDU 1042756077 10326 128.12.154.59 (16 Jan 2003 22:27:57 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3759

Hi, does the three days before the assignment is due count the due day
itself? (ie a total of 5 tests can be run starting from Sunday , or starting
from Monday?) Thanks!
Bina


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Permissions Denied for a directory
Date: Thu, 16 Jan 2003 22:57:43 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1042757863 11466 171.64.15.74 (16 Jan 2003 22:57:43 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3760


>If our ftpcopy program is doing a recursive copy from a server, and it comes
>across a *directory* for which the anonymous user does not have the
>permissions to access, should we ignore the directory similar to the way in
>which we handle files whose permissions we do not have, or should we halt
>the program execution and report an error?

Yep, you should just ignore such directories.

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: script days
Date: Thu, 16 Jan 2003 22:58:28 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1042757908 11476 171.64.15.74 (16 Jan 2003 22:58:28 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3761


>Hi, does the three days before the assignment is due count the due day
>itself? (ie a total of 5 tests can be run starting from Sunday , or starting
>from Monday?) Thanks!

Yes, so it starts from Monday.
.

Path: shelby.stanford.edu!not-for-mail
From: Fritz Budiyanto 
Newsgroups: su.class.cs244a
Subject: CDUP
Date: Fri, 17 Jan 2003 05:14:32 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
X-Trace: news.Stanford.EDU 1042780472 24491 171.64.15.133 (17 Jan 2003 05:14:32 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3762

Hi,

Can we assume CDUP always supported by the FTP server?

thanks,
Fritz
.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: CDUP
Date: Fri, 17 Jan 2003 06:30:13 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine6.stanford.edu
X-Trace: news.Stanford.EDU 1042785013 26666 171.64.15.71 (17 Jan 2003 06:30:13 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3763


>Can we assume CDUP always supported by the FTP server?

The RFC states this is "optional," so this is not a good assumption.
.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: "matching key" for testing?
Date: Fri, 17 Jan 2003 00:00:44 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042790444 29826 171.64.15.69 (17 Jan 2003 08:00:44 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3764

hi all!

during every single one of my testing, the following message appeared:

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y

should we safely enter "y" and ignore it? or is there something else going
wrong in the background?

thanks!

Tan Gao
-------------------


.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Second data connection fails
Date: Fri, 17 Jan 2003 00:18:26 -0800
Lines: 56
Distribution: su
Message-ID: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042791497 855 128.12.72.54 (17 Jan 2003 08:18:17 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3765

Hi,

I've got a problem where the second (yes, 2nd) data connection fails. 
Well, doesn't fail totally - what happens is, I'm getting a 425 error 
(unable to establish data connection) after a very long time (i.e. the 
FTP server is timing out).  But I should be getting a 150 ready to begin 
status message...

Here's the general sequence of what happens: (server is ftp.stanford.edu)

(set up connection (USER, PASS, PORT) - works fine)
LIST
150 Opening ASCII mode data connection
(I call accept(), successfully read in the listing & display it to screen)
226 Transfer complete
LIST
(long wait)
425 Unable to establish data connection
TYPE I
RETR README
(long wait)
425 Unable to establish data connection

What's also bugging me is I have a commercial FTP client (WS_FTP) that 
always gets the 150 response, transfers, then gets the 226 response.  My 
reading of the RFC also seems to imply that the 1XX response is required 
before transfer begins.  My program blocks waiting for that 1XX response 
on the control connection, which it never gets, and thus never gets to 
the second call to accept() - hence the timeout.  So why am I not 
receiving that 150 response on the second transfer?

Now, case 2: (server is ftp.cs.stanford.edu)
(setup is fine)
LIST
150 Opening ASCII ...
(transfers and displays)
226 Transfer complete
LIST
550 Cannot connect to my_IP:port - Address already in use
(note that there is no pause)

Two things I can't figure out here:
1) Why would the address be in use?  I've been very careful to close the 
socket returned by accept() (traced and verified through ddd), so the 
original socket should still be listening.  I've also looked at netstat 
while in the debugger - when the socket returned by accept() is still 
open, there's a port listed as CLOSE_WAIT, and once I've closed the 
socket it disappears.
2) Why am I not getting a 150 Opening ... status message before the 
server starts the transfer?

Also... is there a way to check which sockets are actively listening?

So, two problems, probably related... I think around the lack of this 
150 response

.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!ishastri
From: Ishaan S Shastri 
Newsgroups: su.class.cs244a
Subject: user specified FTP port
Date: Fri, 17 Jan 2003 01:42:54 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine26.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042796575 2830 171.64.15.101 (17 Jan 2003 09:42:55 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3766

When the user specifies a port from the command line, do we assume that
it's already in net order, or should we assume it's host ordered?

Thanks,
Ishaan

.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: freeing memory before exiting
Date: Fri, 17 Jan 2003 02:12:34 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1042798432 4207 128.12.196.91 (17 Jan 2003 10:13:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3767

I'm still a little bit confused whether we should free all the memory before
exiting.
Matthew Holliman said that we should do it but Martin Casado said that we
don't really need to do it.

Actually in echodemo.c there is no freeing memory at all but when I run
purify on echodemo, it doesn't detect any memory leak at all. Does purify
only count memory leak if there is any memory allocated without any pointer
pointing to it ? (ex. : after do the malloc, we set the pointer to NULL)

Any clarifications would be helpful.

Thanks,
Honggo



.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: question about purify
Date: Fri, 17 Jan 2003 02:20:08 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1042798886 4381 128.12.196.91 (17 Jan 2003 10:21:26 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3768

I have another question.
In echodemo.c, there is a statement :
replyBuffer[bytes_read] = 0;

Actually this statement can access out of bound array if bytes_read = 32.
However, this problem is NOT detected by purify.
Am I correct if I assume that purify only detects array bounds write and
array bounds read for dynamically allocated memory ?

Thanks,
Honggo



.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: freeing memory before exiting
Date: Fri, 17 Jan 2003 05:49:16 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042811358 9850 171.64.15.80 (17 Jan 2003 13:49:18 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3769


> I'm still a little bit confused whether we should free all the memory before
> exiting.
> Matthew Holliman said that we should do it but Martin Casado said that we
> don't really need to do it.

 In the advent of answer collision, please follow Mathew's (or any other TAs')
 advice. I'm sorry if I unnecessarily confused anybody :-/

>
> Actually in echodemo.c there is no freeing memory at all but when I run
> purify on echodemo, it doesn't detect any memory leak at all. Does purify
> only count memory leak if there is any memory allocated without any pointer
> pointing to it ? (ex. : after do the malloc, we set the pointer to NULL)
>
> Any clarifications would be helpful.
>
> Thanks, Honggo
>
>
>
>

.

Path: shelby.stanford.edu!epic22.Stanford.EDU!smadhura
From: Madhura Sudhakar Sharangpani 
Newsgroups: su.class.cs244a
Subject: Regarding Test Script Test K
Date: Fri, 17 Jan 2003 08:20:10 -0800
Lines: 30
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042820414 13497 171.64.15.57 (17 Jan 2003 16:20:14 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3770

I am having a problem while running test script, the test K gives error
for me,
following is output I get:
--------------------------
Test K [out of 1]
Checks that ftpcopy handles absolute/relative paths.

Results:  NOT OK

diff between output for absolute and relative paths:
("<" - result in abs path, ">" - result in rel path;
program output different).

9c9
<
/afs/ir.stanford.edu/users/s/m/smadhura/cs244a/testcode/grading_src/build/ftp.slac.stanford.edu_mif_5_1
---
> ftp.slac.stanford.edu_mif_5_0
34,35c34
<
< *******230-

---
> 230-

------------------------------------
my question is, what is this test, what is the meaning of it?
Please explain,
Madhura.

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: freeing memory before exiting
Date: Fri, 17 Jan 2003 19:31:18 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1042831878 19774 171.64.15.66 (17 Jan 2003 19:31:18 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3771


>I'm still a little bit confused whether we should free all the memory before
>exiting.

This is a good practice to get into anyway--Sod's Law dictates that if you
omit this, your code will be reused in some scenario where it matters whether
or not you freed the memory!

>Actually in echodemo.c there is no freeing memory at all but when I run
>purify on echodemo, it doesn't detect any memory leak at all. Does purify
>only count memory leak if there is any memory allocated without any pointer
>pointing to it ? (ex. : after do the malloc, we set the pointer to NULL)

I'm not sure why Purify doesn't catch this.

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: "matching key" for testing?
Date: Fri, 17 Jan 2003 19:35:16 +0000 (UTC)
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1042832116 19855 171.64.15.66 (17 Jan 2003 19:35:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3772


>during every single one of my testing, the following message appeared:

>Can't find a matching key for this test run.
>Would you like to generate a new one?  (y/n):  y

>should we safely enter "y" and ignore it? or is there something else going
>wrong in the background?

The grading script creates a key (called .test_key in the current directory)
corresponding to your most recent submission; it's a hash of the files you
submit.  If you resubmit a set of files whose hash matches the current key
".test_key," you're allowed to run the test again without using another of
your quota.  (This allows you to retest your code without penalty in the
case of a temporary error, such as a particular server being down).

If the set of files you submit does not match the key file in the current
directory, a new one is created (and a new attempt counts against your
daily quota).  That's what this message is asking.

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: user specified FTP port
Date: Fri, 17 Jan 2003 19:37:00 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1042832220 19940 171.64.15.66 (17 Jan 2003 19:37:00 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3774


>When the user specifies a port from the command line, do we assume that
>it's already in net order, or should we assume it's host ordered?

It's in host byte order; network byte order is used only for portability
between different systems, so it's not something that users would ever
think about.

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: question about purify
Date: Fri, 17 Jan 2003 19:38:28 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1042832308 19982 171.64.15.66 (17 Jan 2003 19:38:28 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3775


>I have another question.
>In echodemo.c, there is a statement :
>replyBuffer[bytes_read] = 0;

>Actually this statement can access out of bound array if bytes_read = 32.
>However, this problem is NOT detected by purify.
>Am I correct if I assume that purify only detects array bounds write and
>array bounds read for dynamically allocated memory ?

Did you test the program against input that was 32 bytes or longer?  Purify
should catch ABR/ABW against arrays allocated on the stack also.  But the
only way it can do this is if the error actually occurs during runtime.

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Regarding Test Script Test K
Date: Fri, 17 Jan 2003 19:40:31 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1042832431 20090 171.64.15.66 (17 Jan 2003 19:40:31 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3776


>I am having a problem while running test script, the test K gives error
>for me,
>my question is, what is this test, what is the meaning of it?

It tests that your program handles absolute and relative paths correctly,
i.e. the output should be identical for both cases for the same initial
directory/number of levels.  (The only difference in the two test runs is
in the path handling).  Your program apparently didn't produce identical
output for absolute and relative paths.

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: ftp.slac
Date: Fri, 17 Jan 2003 20:19:32 +0000 (UTC)
Organization: Stanford University
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic5.stanford.edu
X-Trace: news.Stanford.EDU 1042834772 21386 171.64.15.38 (17 Jan 2003 20:19:32 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3777


Is this a server we need to support? I am having trouble getting
a 226 Transfer complete response from it and so my code blocks. All the
other servers in the handout work fine.

Is there any easy way to see the server is non compliant?
.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Second data connection fails
Date: Fri, 17 Jan 2003 20:28:58 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1042835338 21720 171.64.15.66 (17 Jan 2003 20:28:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3778

This is a bit difficult to debug over the newsgroup; unless someone else
has more insight into this in the mean time, perhaps you could bring it
by one of the TAs' office hours.

By your comments below, do you mean you keep the original listen()ing
socket around for future data connections?

>1) Why would the address be in use?  I've been very careful to close the 
>socket returned by accept() (traced and verified through ddd), so the 
>original socket should still be listening.  I've also looked at netstat 
>while in the debugger - when the socket returned by accept() is still 
>open, there's a port listed as CLOSE_WAIT, and once I've closed the 
>socket it disappears.
>2) Why am I not getting a 150 Opening ... status message before the 
>server starts the transfer?

.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Re: question about purify
Date: Fri, 17 Jan 2003 12:46:59 -0800
Lines: 26
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1042836497 22356 128.12.196.91 (17 Jan 2003 20:48:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3779

Yes, I tested the program against input that was longer than 32 bytes.
Purify catch ABR/ABW on the echoString but doesn't catch it on the
replyBuffer.

Thanks,
Honggo

"Matthew Jonathan Holliman"  wrote in message

>
> >I have another question.
> >In echodemo.c, there is a statement :
> >replyBuffer[bytes_read] = 0;
>
> >Actually this statement can access out of bound array if bytes_read = 32.
> >However, this problem is NOT detected by purify.
> >Am I correct if I assume that purify only detects array bounds write and
> >array bounds read for dynamically allocated memory ?
>
> Did you test the program against input that was 32 bytes or longer?
Purify
> should catch ABR/ABW against arrays allocated on the stack also.  But the
> only way it can do this is if the error actually occurs during runtime.
>


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: more ftp.slac
Date: Fri, 17 Jan 2003 20:48:23 +0000 (UTC)
Organization: Stanford University
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic5.stanford.edu
X-Trace: news.Stanford.EDU 1042836503 22362 171.64.15.38 (17 Jan 2003 20:48:23 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3780


Actually it turns out my program runs fine: it just takes 6 minutes to
get the 226 on a LIST command. What could cause this?

This happens both on my home machine (pacbell.net) and epic. 
The purify report is 

   Finished  ftpcopy.purify       (   0 errors, 0 leaked bytes)
      Purify instrumented ftpcopy.purify (pid 12841 at Fri Jan 17 12:40:44 2003)
      Purify 2002a.06.00 Solaris 2 (32-bit) Copyright (C) 1992-2002 Rational Software Corp.  All rights reserved.  
      For contact information type: "purify -help"
      For TTY output, use the option "-windows=no"
      Options settings: -purify -cache-dir=/tmp/rational.seetapun \
          -cache-dir=/tmp/seetapun \
          -purify-home=/usr/pubsw/apps/rational-2002.06.00/releases/purify.sol.2002a.06.00 
      License successfully checked out.
      Command-line: ./ftpcopy.purify ftp.slac 
      Current file descriptors in use: 7
      Memory leaked: 0 bytes (0%); potentially leaked: 0 bytes (0%)
      Program exited with status code 0.
.

Path: shelby.stanford.edu!not-for-mail
From: Fritz Budiyanto 
Newsgroups: su.class.cs244a
Subject: CWD with no permission, and file overwrite
Date: Fri, 17 Jan 2003 21:29:56 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1042838996 23453 171.64.15.109 (17 Jan 2003 21:29:56 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3781

Hi, 

Should we ignore CWD failure on accessing a directory due to
permission? or exit with failure?
If we overwrite a file, shall we change the permission to S_IREAD and S_IWRITE?

fritz

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: less slac
Date: Fri, 17 Jan 2003 22:14:57 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic5.stanford.edu
X-Trace: news.Stanford.EDU 1042841697 25169 171.64.15.38 (17 Jan 2003 22:14:57 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3782


Found the problem: wasn't using shutdown properly.
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: less slac
Date: Fri, 17 Jan 2003 15:49:08 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042847411 28630 128.12.186.92 (17 Jan 2003 23:50:11 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3783

Glad to hear that you figured out the problem -- perhaps if anyone else is
having problems with SLAC, they should look into that as well.

--Russell Greene


"David Seetapun"  wrote in message

>
> Found the problem: wasn't using shutdown properly.


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: CWD with no permission, and file overwrite
Date: Fri, 17 Jan 2003 15:51:04 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042847527 28679 128.12.186.92 (17 Jan 2003 23:52:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3784

If you cannot enter a directory due to permission problems then just keep on
running your program as if the directory was not there.

When you overwrite a file, that will happen because you open a new file with
the same name (which effectively overwrites the existing file).  Because you
specify permissions when you open a file, there is no need to change
permissions when overwriting a file.

Hope this helps.

--Russ

"Fritz Budiyanto"  wrote in message

> Hi,
>
> Should we ignore CWD failure on accessing a directory due to
> permission? or exit with failure?
> If we overwrite a file, shall we change the permission to S_IREAD and
S_IWRITE?
>
> fritz
>


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: CWD with no permission, and file overwrite
Date: Fri, 17 Jan 2003 23:59:30 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1042847970 28864 171.64.15.101 (17 Jan 2003 23:59:30 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3785



>Should we ignore CWD failure on accessing a directory due to
>permission? or exit with failure?

Not to pick on you in particular, but this question was also answered on here
yesterday!  Everyone:  Please try and read the existing questions/answers
before you post on here--it'll save everyone time.  Thanks.

.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: Second data connection fails
Date: Fri, 17 Jan 2003 16:35:18 -0800
Lines: 31
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042850110 45 128.12.72.54 (18 Jan 2003 00:35:10 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3786

I did manage to get around the problem (creating an entirely new data 
socket instead of re-using the old one); messy but functional.  I'll 
probably come to office hours though - irks me to not be able to truly 
set up a server.

Yes, I am keeping the original (listen) socket around - every accept 
call is on that socket.  The socket returned by accept() works fine for 
one transfer, then I close it.  I also can't seem to re-bind() the 
listen socket though (as FAQ #2 for this assignment suggests) - I get an 
invalid arguments error.

Matthew Jonathan Holliman wrote:
> This is a bit difficult to debug over the newsgroup; unless someone else
> has more insight into this in the mean time, perhaps you could bring it
> by one of the TAs' office hours.
> 
> By your comments below, do you mean you keep the original listen()ing
> socket around for future data connections?
> 
> 
>>1) Why would the address be in use?  I've been very careful to close the 
>>socket returned by accept() (traced and verified through ddd), so the 
>>original socket should still be listening.  I've also looked at netstat 
>>while in the debugger - when the socket returned by accept() is still 
>>open, there's a port listed as CLOSE_WAIT, and once I've closed the 
>>socket it disappears.
>>2) Why am I not getting a 150 Opening ... status message before the 
>>server starts the transfer?
> 
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: HW1: Continue if can't create local dir?
Date: Sat, 18 Jan 2003 01:23:58 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1042853038 1799 171.64.15.107 (18 Jan 2003 01:23:58 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3787

What do we do if we successfully entered a directory on the server,
but cannot then create the corresponding directory on the local machine
due to a permissions error? 

(There might be a pre-existing directory in the local tree with no execute
or write permissions, OR there might be a normal file with the same name
as a dir we'd try to create).

Do we die with an error, or ignore the whole server dir and keep processing?

- Mark


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: file extensions
Date: Sat, 18 Jan 2003 03:02:06 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic5.stanford.edu
X-Trace: news.Stanford.EDU 1042858926 5635 171.64.15.38 (18 Jan 2003 03:02:06 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3788


should ".gz" be considered to have extension .gz?
.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: UMR when calling getcwd()
Date: Fri, 17 Jan 2003 19:16:04 -0800
Lines: 25
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042859766 5965 171.64.15.78 (18 Jan 2003 03:16:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3789

I am getting this error although my code is as simple as

char *localCWD = NULL;
.....
localCWD = getcwd(NULL, MAX_STRING_SIZE); /* <<<=== Trouble maker. */
.....
.....
free(localCWD);

The above piece of code appear in my function to copy directory. It seems
it happens every time I go one level down into a subdirection. That is, if
I copy 5 levels deep, then I get 5 UMR errors in purify window, all
pointing to the same line. There is no other memory errors.

Anyone else has the same problem?

I tried to add "suppress UMR; getcwd" in my .purify file. It didn't work.
While I am on the subject, how do we make ftpcopy.output from purify
window?

Thanks a lot.

Jichun


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: using mkdir to make directories
Date: Sat, 18 Jan 2003 05:03:35 +0000 (UTC)
Organization: Stanford University
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic3.stanford.edu
X-Trace: news.Stanford.EDU 1042866215 9322 171.64.15.36 (18 Jan 2003 05:03:35 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3790


If I do this as the FAQ suggests and the directory exist I get something like

mkdir: /Users/seetapun/ftpcopy_test//bussys: File exists

The program is not supposed to print anything like this. How can I suppress
this output or is it acceptable for the program to have this?
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: microsoft.ftp.com
Date: Sat, 18 Jan 2003 05:41:22 +0000 (UTC)
Organization: Stanford University
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic3.stanford.edu
X-Trace: news.Stanford.EDU 1042868482 10240 171.64.15.36 (18 Jan 2003 05:41:22 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3791


After about depth 5 there are directories with names like

Dungeons&dragons (I guess windows allows this)

if one does mkdir Dungeons&dragons
one is happy there isn't a game Dungeons&rm -rf /

can we just assume that the filesystem of the server doesn't have stuff like
this?
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Continue if can't create local dir?
Date: Fri, 17 Jan 2003 23:43:32 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042875877 13073 128.12.186.92 (18 Jan 2003 07:44:37 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3792

It is safe to bail if you do not have permissions on your local machine.

--Russ


"Mark Rabkin"  wrote in message

> What do we do if we successfully entered a directory on the server,
> but cannot then create the corresponding directory on the local machine
> due to a permissions error?
>
> (There might be a pre-existing directory in the local tree with no execute
> or write permissions, OR there might be a normal file with the same name
> as a dir we'd try to create).
>
> Do we die with an error, or ignore the whole server dir and keep
processing?
>
> - Mark
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: file extensions
Date: Fri, 17 Jan 2003 23:44:52 -0800
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042875957 13104 128.12.186.92 (18 Jan 2003 07:45:57 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3793

"David Seetapun"  wrote in message

>
> should ".gz" be considered to have extension .gz?

Yes

--Russ


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: UMR when calling getcwd()
Date: Fri, 17 Jan 2003 23:51:59 -0800
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042876384 13292 128.12.186.92 (18 Jan 2003 07:53:04 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3794

> I am getting this error although my code is as simple as
>
> char *localCWD = NULL;
> ....
> localCWD = getcwd(NULL, MAX_STRING_SIZE); /* <<<=== Trouble maker. */
> ....
> ....
> free(localCWD);
>
> The above piece of code appear in my function to copy directory. It seems
> it happens every time I go one level down into a subdirection. That is, if
> I copy 5 levels deep, then I get 5 UMR errors in purify window, all
> pointing to the same line. There is no other memory errors.
>
> Anyone else has the same problem?

The code as you have it looks correct.  Perhaps the error lies in what you
have between those lines.

>
> I tried to add "suppress UMR; getcwd" in my .purify file. It didn't work.
> While I am on the subject, how do we make ftpcopy.output from purify
> window?
>

There is a purify faq available from the FAQ section of the website.


> Thanks a lot.
>
> Jichun
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: using mkdir to make directories
Date: Fri, 17 Jan 2003 23:56:29 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042876654 13446 128.12.186.92 (18 Jan 2003 07:57:34 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3795

Are you performing a system call to the shell and then running mkdir or
actually using the mkdir command directly?  I do not believe the mkdir
prints anything to the console on error, rather the command should return
a -1 on error (including when the directory trying to be created already
exists) and sets the errno value.

--Russ

"David Seetapun"  wrote in message

>
> If I do this as the FAQ suggests and the directory exist I get something
like
>
> mkdir: /Users/seetapun/ftpcopy_test//bussys: File exists
>
> The program is not supposed to print anything like this. How can I
suppress
> this output or is it acceptable for the program to have this?


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: microsoft.ftp.com
Date: Fri, 17 Jan 2003 23:58:34 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042876779 13491 128.12.186.92 (18 Jan 2003 07:59:39 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3796

Haha, that's excellent.  It is safe to assume that the directories you
create will not destroy your system :)

--Russ


"David Seetapun"  wrote in message

>
> After about depth 5 there are directories with names like
>
> Dungeons&dragons (I guess windows allows this)
>
> if one does mkdir Dungeons&dragons
> one is happy there isn't a game Dungeons&rm -rf /
>
> can we just assume that the filesystem of the server doesn't have stuff
like
> this?


.

Path: shelby.stanford.edu!saga7.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: Directory doubts.
Date: Sat, 18 Jan 2003 01:02:31 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042880558 15206 171.64.15.137 (18 Jan 2003 09:02:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3797

Hello,

I had a couple of doubts.

Our command line is ftpcopy gz 2 ftp.stanford.edu dstdir srcdir

1)Can we assume that the dstdir directory is present in our system or do
we have to create it if not present?

2) can we assume both dstsir and srcdir are complete paths or can they be
relative paths?

Thanks
Milap

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Directory doubts.
Date: Sat, 18 Jan 2003 01:32:45 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1042882432 15772 128.12.186.92 (18 Jan 2003 09:33:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3798


"Milap Chandrakant Shah"  wrote in message

> Hello,
>
> I had a couple of doubts.
>
> Our command line is ftpcopy gz 2 ftp.stanford.edu dstdir srcdir
>
> 1)Can we assume that the dstdir directory is present in our system or do
> we have to create it if not present?
>

As specified in the assignment: You may assume that the local directory
already exists; exit with an error if it does not.


> 2) can we assume both dstsir and srcdir are complete paths or can they be
> relative paths?
>

Although I cannot find where this is specified, it is my belief that you
should support both relative and complete paths.  Since file commands
support both relative and complete paths it should be relatively
straightforward to support this functionality.

> Thanks
> Milap
>


.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: UMR when calling getcwd()
Date: Sat, 18 Jan 2003 01:56:28 -0800
Lines: 52
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine36.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042883790 16265 171.64.15.111 (18 Jan 2003 09:56:30 GMT)
X-Complaints-To: 
To: Russell Greene 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3799

The variable char* localCWD is only used after we've finished copying a
subdirectory recursively and step back to the parent directory. So between
the lines, it is only used a couple of times in chdir(localCWD).

I've got around this problem by not keeping track of the path to parent
directory at all, but use chdir("..") after copying the sub-dir
recursively to get back to parent dir, based on the fact that we go only
one level down at each recursive call.  We are lucky we don't have to
handle links so I can get away like this.  But I am still quite
uncomfortable not knowing why a call of getcwd()  gives me UMR.

Jichun

On Fri, 17 Jan 2003, Russell Greene wrote:

> > I am getting this error although my code is as simple as
> >
> > char *localCWD = NULL;
> > ....
> > localCWD = getcwd(NULL, MAX_STRING_SIZE); /* <<<=== Trouble maker. */
> > ....
> > ....
> > free(localCWD);
> >
> > The above piece of code appear in my function to copy directory. It seems
> > it happens every time I go one level down into a subdirection. That is, if
> > I copy 5 levels deep, then I get 5 UMR errors in purify window, all
> > pointing to the same line. There is no other memory errors.
> >
> > Anyone else has the same problem?
>
> The code as you have it looks correct.  Perhaps the error lies in what you
> have between those lines.
>
> >
> > I tried to add "suppress UMR; getcwd" in my .purify file. It didn't work.
> > While I am on the subject, how do we make ftpcopy.output from purify
> > window?
> >
>
> There is a purify faq available from the FAQ section of the website.
>
>
> > Thanks a lot.
> >
> > Jichun
> >
> >
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: file extensions
Date: Sat, 18 Jan 2003 10:39:22 -0800
Lines: 23
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: adsl-64-172-97-30.dsl.snfc21.pacbell.net
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042915203 81 64.172.97.30 (18 Jan 2003 18:40:03 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.77 [en] (Win98; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3800

Hi,
according to Q20 in the FAQ handout "gz" matches "*.gz"
so I'd think that ".gz" should match extension "*..gz" (note: two dots)
and not "*.gz", in the same way "gz" does not match "*gz".
Not to be nit-picking here but I would hate to
fail some test because of this.

Could you clarify?
Thanks
Rafa


Russell Greene wrote:

> "David Seetapun"  wrote in message
> 
> >
> > should ".gz" be considered to have extension .gz?
>
> Yes
>
> --Russ

.

Path: shelby.stanford.edu!not-for-mail
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: 5 Questions/comments about hw1 assignment
Date: Sat, 18 Jan 2003 11:27:17 -0800
Lines: 60
Distribution: su
Message-ID: 
NNTP-Posting-Host: adsl-64-172-97-30.dsl.snfc21.pacbell.net
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042918075 1714 64.172.97.30 (18 Jan 2003 19:27:55 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.77 [en] (Win98; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3801

Hi,
I have a few questions/comments about the assigment that I'd like one
of the TA's to comment on.

1) Sometimes when I try to run the testing script I get : Connection
timed out
----------------
elaine4:~/class/cs244a/tests> /usr/class/cs244a/bin/test_code.pl hw1
Makefile *.c *h purify.output .purify
/usr/class/cs244a/bin/test_code.pl: Connection timed out.
----------------
Some other times it works OK, but I was wondering what is happening
here.

2) I originally was using several connections to the ftp server in
parallel in order to
speed up the transfer of several files in parallel but it seems that
this is not allowed because you test
our programs in such a way that the ftp server only allows ONE
connection at a time.
This seems like a very artificial restriction. Why don't you run the
tests with  "ftpd -f"
instead?

3) To avoid the problem of closing/opening multiple connections the RFC
says that STREAM
transfer mode is inherently unreliable and a different mode should be
used. I have tried to
use BLOCK transfer mode but it seems the ftp server you use for testing
does
not have this implemented, I get:
550: Transfer mode not implemented.
It seems to me that the only solution left for us is to close and create
a different data connection
for every file. Am I missing anything here?

4) In FAQ Q22 and in the assignment handout it is said that we should
not
expect replies longer than 1024 bytes but the ftp server
ftp.slac.stanford.edu  that you use as part of the testing has a welcome

message much longer than 1024. Could you clarify? Shouln't you either
revise the assignment
and FAQ or change the server?.

5) In FAQ Q16 it is said that we are not required to support non RFC
compliant
servers. It seems to me that test L.6 is using a non-compliant ftp
server because
the reply that this server gives doesn't have any valid reply code.
--------------
elaine4:~/class/cs244a/hw1> ftp elaine13
Connected to elaine13.Stanford.EDU.
You can't FTP into this machine. FTP into transfer.stanford.edu.
----------------------


Thanks
Rafa

.

Path: shelby.stanford.edu!epic12.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Which ftp commands must we retry after failing the first attempt?
Date: Sat, 18 Jan 2003 13:59:56 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic12.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042927199 5740 171.64.15.45 (18 Jan 2003 21:59:59 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3802

In the handout, it said upon receiving the 400 series reply codes the ftp
command should be retried later.

The RFC 959 said

421 Service not available ...
425 Can't open data connection .
426 Connection closed ...
....

among which, I am not sure if retry meant resending the ftp command or try
another ftp session completely fresh.

Any hint?

Thanks a lot.

Jichun

.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: Which ftp commands must we retry after failing the first attempt?
Date: Sat, 18 Jan 2003 14:23:37 -0800
Lines: 32
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1042928618 6667 128.12.185.34 (18 Jan 2003 22:23:38 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3803

From last years newsgroup:

>As the RFC says, the meaning of "transient" is rather vague.  You can
>handle 4xx and 5xx errors the same way in this assignment.

Nishant



"Jichun Zhu"  wrote in message

> In the handout, it said upon receiving the 400 series reply codes the ftp
> command should be retried later.
>
> The RFC 959 said
>
> 421 Service not available ...
> 425 Can't open data connection .
> 426 Connection closed ...
> ...
>
> among which, I am not sure if retry meant resending the ftp command or try
> another ftp session completely fresh.
>
> Any hint?
>
> Thanks a lot.
>
> Jichun
>


.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Which ftp commands must we retry after failing the first attempt?
Date: Sat, 18 Jan 2003 23:39:56 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 41
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1042933196 10132 171.64.15.77 (18 Jan 2003 23:39:56 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3804

I agree with Nishant.  You can treat 4xx and 5xx errors as
hard errors.

SteveJ

In article 
Nishant Verman  wrote:
>From last years newsgroup:
>
>>As the RFC says, the meaning of "transient" is rather vague.  You can
>>handle 4xx and 5xx errors the same way in this assignment.
>
>Nishant
>
>
>
>"Jichun Zhu"  wrote in message

>> In the handout, it said upon receiving the 400 series reply codes the ftp
>> command should be retried later.
>>
>> The RFC 959 said
>>
>> 421 Service not available ...
>> 425 Can't open data connection .
>> 426 Connection closed ...
>> ...
>>
>> among which, I am not sure if retry meant resending the ftp command or try
>> another ftp session completely fresh.
>>
>> Any hint?
>>
>> Thanks a lot.
>>
>> Jichun
>>
>
>


.

Path: shelby.stanford.edu!saga21.Stanford.EDU!ching
From:  (Michael Ching)
Newsgroups: su.class.cs244a
Subject: Problem with ftp.slac.stanford.edu
Date: Sat, 18 Jan 2003 23:42:19 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga21.stanford.edu
X-Trace: news.Stanford.EDU 1042933339 10216 171.64.15.151 (18 Jan 2003 23:42:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3805

Related to the problems posted by David Seetapun, I too ran into problems 
with ftp.slac.stanford.edu.  Whenever I issue the list command, the system 
seem to hang while waiting for the 226 transfer complete response.  This 
doesn't happen with any other ftp servers.  With David's help and some 
poking around, I discover the following solution.

For whatever reason, the slac server will only issue the 226 response 
after the data connection has been closed.  Since I issue the close() 
command at the end of my procedure, after pulling the connection socket 
for a response, it just hangs.  You must close the data connection right 
after receiving the list and before pulling the connection socket for the 
226 response.  For those of you using PASV, that means you need to issue 
the shutdown command to the data connection, before pulling the connection 
socket for the 226 response.  This way the slac server can shutdown the 
data connection right after transmitting the list.

I hope this will save some of you a couple of hours of hair pulling. :)

Mike

.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: file extensions
Date: Sun, 19 Jan 2003 00:42:18 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 32
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1042936938 11877 171.64.15.77 (19 Jan 2003 00:42:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3806

I agree, but will confer with the other TAs for the definitive
answer.

SteveJ

In article 
Rafael M Hernandez   wrote:
>Hi,
>according to Q20 in the FAQ handout "gz" matches "*.gz"
>so I'd think that ".gz" should match extension "*..gz" (note: two dots)
>and not "*.gz", in the same way "gz" does not match "*gz".
>Not to be nit-picking here but I would hate to
>fail some test because of this.
>
>Could you clarify?
>Thanks
>Rafa
>
>
>Russell Greene wrote:
>
>> "David Seetapun"  wrote in message
>> 
>> >
>> > should ".gz" be considered to have extension .gz?
>>
>> Yes
>>
>> --Russ
>


.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: 5 Questions/comments about hw1 assignment
Date: Sun, 19 Jan 2003 00:50:31 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 83
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1042937431 12077 171.64.15.77 (19 Jan 2003 00:50:31 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3807

Comments inline:

In article 
Rafael M Hernandez   wrote:
>Hi,
>I have a few questions/comments about the assigment that I'd like one
>of the TA's to comment on.
>

I've emailed our script expert about the following:

>1) Sometimes when I try to run the testing script I get : Connection
>timed out
>----------------
>elaine4:~/class/cs244a/tests> /usr/class/cs244a/bin/test_code.pl hw1
>Makefile *.c *h purify.output .purify
>/usr/class/cs244a/bin/test_code.pl: Connection timed out.
>----------------
>Some other times it works OK, but I was wondering what is happening
>here.

I don't think we will be able to support parallel transfers
in the grading script.

>
>2) I originally was using several connections to the ftp server in
>parallel in order to
>speed up the transfer of several files in parallel but it seems that
>this is not allowed because you test
>our programs in such a way that the ftp server only allows ONE
>connection at a time.
>This seems like a very artificial restriction. Why don't you run the
>tests with  "ftpd -f"
>instead?
>

In my understanding, using stream transfer mode is correct.

>3) To avoid the problem of closing/opening multiple connections the RFC
>says that STREAM
>transfer mode is inherently unreliable and a different mode should be
>used. I have tried to
>use BLOCK transfer mode but it seems the ftp server you use for testing
>does
>not have this implemented, I get:
>550: Transfer mode not implemented.
>It seems to me that the only solution left for us is to close and create
>a different data connection
>for every file. Am I missing anything here?
>

You are not responsible for working with non-compliant ftp servers.
We (the TAs) will post a definitive answer regarding the following two
issues.

SteveJ

>4) In FAQ Q22 and in the assignment handout it is said that we should
>not
>expect replies longer than 1024 bytes but the ftp server
>ftp.slac.stanford.edu  that you use as part of the testing has a welcome
>
>message much longer than 1024. Could you clarify? Shouln't you either
>revise the assignment
>and FAQ or change the server?.
>
>5) In FAQ Q16 it is said that we are not required to support non RFC
>compliant
>servers. It seems to me that test L.6 is using a non-compliant ftp
>server because
>the reply that this server gives doesn't have any valid reply code.
>--------------
>elaine4:~/class/cs244a/hw1> ftp elaine13
>Connected to elaine13.Stanford.EDU.
>You can't FTP into this machine. FTP into transfer.stanford.edu.
>----------------------
>
>
>Thanks
>Rafa
>


.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!kushcu
From: Ozgun Ali Erdogan 
Newsgroups: su.class.cs244a
Subject: weird problem in changing dirs
Date: Sat, 18 Jan 2003 20:12:09 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042949547 17502 171.64.15.76 (19 Jan 2003 04:12:27 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3808


Hi,

My code runs fine with the local ftpd when going into multiple
directories, but when I try it on ftp.microsoft.com (or other test sites),
my program just hangs, or outputs an FTP 500 error. (when it's not
supposed to.)

The problem is, when I'm debugging, I don't run into any  kind of
problems, I just browse through the directories and everything works
fine.

This problem only occurs when I'm changing directories. Could anyone help
me with that?

Thanks,

Ozgun.

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: weird problem in changing dirs
Date: Sun, 19 Jan 2003 04:39:45 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 50
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042951185 18086 171.64.15.112 (19 Jan 2003 04:39:45 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3809

Hi Ozgun,

Here is what RFC 959 has to say about error 500:

         500 Syntax error, command unrecognized.
             This may include errors such as command line too long.

Page 49 of the RFC indicates when error 500 might be expected to
occur.  As you can see, it can occur just about anywhere; more
debugging will be needed.

If I understand what you said, your program works OK when you
are debugging (single-stepping?) but not otherwise, when accessing
certain sites?  This suggests a timing problem, which the artificial
delays introduced by the debugging work around.

It's possible that ftpd is more forgiving about some aspect of the
communication protocol, or that the timing is simply different.
Take a careful look at your protocol code, particularly in areas
involving directory changes.

If you need more help, post again or come to TA office hours.  It
will take additional information for us to proceed.

SteveJ


In article 
Ozgun Ali Erdogan   wrote:
>
>Hi,
>
>My code runs fine with the local ftpd when going into multiple
>directories, but when I try it on ftp.microsoft.com (or other test sites),
>my program just hangs, or outputs an FTP 500 error. (when it's not
>supposed to.)
>
>The problem is, when I'm debugging, I don't run into any  kind of
>problems, I just browse through the directories and everything works
>fine.
>
>This problem only occurs when I'm changing directories. Could anyone help
>me with that?
>
>Thanks,
>
>Ozgun.
>


.

Path: shelby.stanford.edu!not-for-mail
From: Nordstrom Kirk Phelps 
Newsgroups: su.class.cs244a
Subject: Connection reset by peer?
Date: Sat, 18 Jan 2003 20:50:25 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine19.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1042951826 18347 171.64.15.84 (19 Jan 2003 04:50:26 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3810

In the process of trying to get a directory listing from the server, I
set PASV, connect to the port and ip specified, wait for the transfer to
complete (226) and then read from the socket.  This read command returns
a -1, and sets the sys error string to "Connection reset by peer".  Does
anyone know why this is happening?  Thanks.
.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Why is my ftp slow?
Date: Sat, 18 Jan 2003 20:57:38 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1042952073 18404 128.12.184.109 (19 Jan 2003 04:54:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:3811

Hi,
  When I try to copy a 10 MB file from ftp.cs.stanford.edu my program takes
very long time (more than 10 mins) compared to the normal ftp client. Why
could this be happenning? Is it coz we r using 'stream mode' transmission
and not 'block mode'? Or could it be because of some inefficient code  in my
program? (like reading slowly out of the socket)
    Will this be a problem.. while testing.. will the test software consider
that the program is hanging?
Thanx,
Pavan


.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!kushcu
From: Ozgun Ali Erdogan 
Newsgroups: su.class.cs244a
Subject: Re: weird problem in changing dirs
Date: Sat, 18 Jan 2003 21:25:41 -0800
Lines: 69
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042953957 19118 171.64.15.87 (19 Jan 2003 05:25:57 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3812


Hi,

I'm sorry, I meant to write 550 as the error. I was just very annoyed with
this error and was typing fast. I went over the code for lots of times and
still get the same error. (though at different places, and almost never in
debugging). unfortunately since I couldn't exactly detect where the
problem is, I can't post a fragment of code.

are there going to be TA office hours this Monday?

thanks a lot Steve,

Ozgun.

On Sun, 19 Jan 2003, Steve Jacobson wrote:

> Hi Ozgun,
>
> Here is what RFC 959 has to say about error 500:
>
>          500 Syntax error, command unrecognized.
>              This may include errors such as command line too long.
>
> Page 49 of the RFC indicates when error 500 might be expected to
> occur.  As you can see, it can occur just about anywhere; more
> debugging will be needed.
>
> If I understand what you said, your program works OK when you
> are debugging (single-stepping?) but not otherwise, when accessing
> certain sites?  This suggests a timing problem, which the artificial
> delays introduced by the debugging work around.
>
> It's possible that ftpd is more forgiving about some aspect of the
> communication protocol, or that the timing is simply different.
> Take a careful look at your protocol code, particularly in areas
> involving directory changes.
>
> If you need more help, post again or come to TA office hours.  It
> will take additional information for us to proceed.
>
> SteveJ
>
>
> In article 
> Ozgun Ali Erdogan   wrote:
> >
> >Hi,
> >
> >My code runs fine with the local ftpd when going into multiple
> >directories, but when I try it on ftp.microsoft.com (or other test sites),
> >my program just hangs, or outputs an FTP 500 error. (when it's not
> >supposed to.)
> >
> >The problem is, when I'm debugging, I don't run into any  kind of
> >problems, I just browse through the directories and everything works
> >fine.
> >
> >This problem only occurs when I'm changing directories. Could anyone help
> >me with that?
> >
> >Thanks,
> >
> >Ozgun.
> >
>
>
>

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: FIU error
Date: Sat, 18 Jan 2003 22:38:23 -0800
Lines: 21
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1042958305 20757 171.64.15.70 (19 Jan 2003 06:38:25 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3813

I'm getting the following message in purify.output:

FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
   * File info: ?r--r--r--  1 root     root             0 May 11  2002
   * This file descriptor was allocated from:
	__open64       [libc.so.1]
	_open64        [libc.so.1]
	_nsc_trydoorcall [libc.so.1]
	_door_gethostbyname_r [gethostby_door.c]
	_get_hostserv_inetnetdir_byname [netdir_inet.c]
	gethostbyname_r [gethostbyname_r.c]

Its seems to be allocated by gethostbyname - any ideas how to deallocate
it?

Thanks,
Nishant




.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: weird problem in changing dirs
Date: Sun, 19 Jan 2003 06:41:36 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 85
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042958496 20829 171.64.15.112 (19 Jan 2003 06:41:36 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3814

In article 
Ozgun Ali Erdogan   wrote:
>

         550 Requested action not taken.
             File unavailable (e.g., file not found, no access).

An intermittent error of this sort is hard to debug without
working hands-on with the code.

I'm not certain about TA office hours on Monday.  One of the
TAs will post when we know for sure.

SteveJ

>Hi,
>
>I'm sorry, I meant to write 550 as the error. I was just very annoyed with
>this error and was typing fast. I went over the code for lots of times and
>still get the same error. (though at different places, and almost never in
>debugging). unfortunately since I couldn't exactly detect where the
>problem is, I can't post a fragment of code.
>
>are there going to be TA office hours this Monday?
>
>thanks a lot Steve,
>
>Ozgun.
>
>On Sun, 19 Jan 2003, Steve Jacobson wrote:
>
>> Hi Ozgun,
>>
>> Here is what RFC 959 has to say about error 500:
>>
>>          500 Syntax error, command unrecognized.
>>              This may include errors such as command line too long.
>>
>> Page 49 of the RFC indicates when error 500 might be expected to
>> occur.  As you can see, it can occur just about anywhere; more
>> debugging will be needed.
>>
>> If I understand what you said, your program works OK when you
>> are debugging (single-stepping?) but not otherwise, when accessing
>> certain sites?  This suggests a timing problem, which the artificial
>> delays introduced by the debugging work around.
>>
>> It's possible that ftpd is more forgiving about some aspect of the
>> communication protocol, or that the timing is simply different.
>> Take a careful look at your protocol code, particularly in areas
>> involving directory changes.
>>
>> If you need more help, post again or come to TA office hours.  It
>> will take additional information for us to proceed.
>>
>> SteveJ
>>
>>
>> In article 
>> Ozgun Ali Erdogan   wrote:
>> >
>> >Hi,
>> >
>> >My code runs fine with the local ftpd when going into multiple
>> >directories, but when I try it on ftp.microsoft.com (or other test sites),
>> >my program just hangs, or outputs an FTP 500 error. (when it's not
>> >supposed to.)
>> >
>> >The problem is, when I'm debugging, I don't run into any  kind of
>> >problems, I just browse through the directories and everything works
>> >fine.
>> >
>> >This problem only occurs when I'm changing directories. Could anyone help
>> >me with that?
>> >
>> >Thanks,
>> >
>> >Ozgun.
>> >
>>
>>
>>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Why is my ftp slow?
Date: Sun, 19 Jan 2003 06:50:39 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 27
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042959039 21049 171.64.15.112 (19 Jan 2003 06:50:39 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3815

Certainly this could be caused by inefficient code.  If you
are reading and handling file characters byte-by-byte, think
about how this might be speeded up.

Stream mode should be OK.

I think you will be OK regarding the test software, but I will
verify with our script wizard.

SteveJ

In article 
Pavan  wrote:
>Hi,
>  When I try to copy a 10 MB file from ftp.cs.stanford.edu my program takes
>very long time (more than 10 mins) compared to the normal ftp client. Why
>could this be happenning? Is it coz we r using 'stream mode' transmission
>and not 'block mode'? Or could it be because of some inefficient code  in my
>program? (like reading slowly out of the socket)
>    Will this be a problem.. while testing.. will the test software consider
>that the program is hanging?
>Thanx,
>Pavan
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sat, 18 Jan 2003 22:50:58 -0800
Lines: 37
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1042959060 21056 128.12.185.34 (19 Jan 2003 06:51:00 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3816

Apparently the autograder fails me on the last test for this - I get a
message saying:

Test O [out of 1]
Checks that you did indeed run purify!
Results:   NOT OK :(
purify.output did not match expected regexp.

Am I failing this because of the previously mentioned error?



"Nishant Verman"  wrote in message

> I'm getting the following message in purify.output:
>
> FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
>    * File info: ?r--r--r--  1 root     root             0 May 11  2002
>    * This file descriptor was allocated from:
> __open64       [libc.so.1]
> _open64        [libc.so.1]
> _nsc_trydoorcall [libc.so.1]
> _door_gethostbyname_r [gethostby_door.c]
> _get_hostserv_inetnetdir_byname [netdir_inet.c]
> gethostbyname_r [gethostbyname_r.c]
>
> Its seems to be allocated by gethostbyname - any ideas how to deallocate
> it?
>
> Thanks,
> Nishant
>
>
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sun, 19 Jan 2003 07:19:23 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 46
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042960763 21857 171.64.15.112 (19 Jan 2003 07:19:23 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3817


Are you specifying purify.output in your list of files?

SteveJ

In article 
Nishant Verman  wrote:
>Apparently the autograder fails me on the last test for this - I get a
>message saying:
>
>Test O [out of 1]
>Checks that you did indeed run purify!
>Results:   NOT OK :(
>purify.output did not match expected regexp.
>
>Am I failing this because of the previously mentioned error?
>
>
>
>"Nishant Verman"  wrote in message

>> I'm getting the following message in purify.output:
>>
>> FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
>>    * File info: ?r--r--r--  1 root     root             0 May 11  2002
>>    * This file descriptor was allocated from:
>> __open64       [libc.so.1]
>> _open64        [libc.so.1]
>> _nsc_trydoorcall [libc.so.1]
>> _door_gethostbyname_r [gethostby_door.c]
>> _get_hostserv_inetnetdir_byname [netdir_inet.c]
>> gethostbyname_r [gethostbyname_r.c]
>>
>> Its seems to be allocated by gethostbyname - any ideas how to deallocate
>> it?
>>
>> Thanks,
>> Nishant
>>
>>
>>
>>
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Connection reset by peer?
Date: Sun, 19 Jan 2003 07:21:22 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042960882 21935 171.64.15.112 (19 Jan 2003 07:21:22 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3818

I would need to see the sequence of socket commands.  You can
email the code to me if it's not appropriate to post.

SteveJ


In article 
Nordstrom Kirk Phelps   wrote:
>In the process of trying to get a directory listing from the server, I
>set PASV, connect to the port and ip specified, wait for the transfer to
>complete (226) and then read from the socket.  This read command returns
>a -1, and sets the sys error string to "Connection reset by peer".  Does
>anyone know why this is happening?  Thanks.


.

Path: shelby.stanford.edu!not-for-mail
From: "Keith Simmons" 
Newsgroups: su.class.cs244a
Subject: PORT argument
Date: Sat, 18 Jan 2003 23:24:17 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: ksimmons.stanford.edu
X-Trace: news.Stanford.EDU 1042961057 21974 128.12.105.123 (19 Jan 2003 07:24:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3819

RFC 959 specifies the PORT argument as a comma delimited set of six numbers
h1,h2,h3,h4,p1,p2.   The arguments h1 through h4 are decimal representations
of each byte in the four byte ip address and p1/p2 are decimal
representation of the two bytes in the port number.  Do we put these bytes
in network order?  Thanks for the help.

Keith


.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sat, 18 Jan 2003 23:25:31 -0800
Lines: 59
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1042961132 22004 128.12.185.34 (19 Jan 2003 07:25:32 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3820

yup...but I have the FIU error in the purify.output .

maybe I should just setup my .purify to skip these errors - would that be
ok?

nishant


"Steve Jacobson"  wrote in message

>
> Are you specifying purify.output in your list of files?
>
> SteveJ
>
> In article 
> Nishant Verman  wrote:
> >Apparently the autograder fails me on the last test for this - I get a
> >message saying:
> >
> >Test O [out of 1]
> >Checks that you did indeed run purify!
> >Results:   NOT OK :(
> >purify.output did not match expected regexp.
> >
> >Am I failing this because of the previously mentioned error?
> >
> >
> >
> >"Nishant Verman"  wrote in message
> 
> >> I'm getting the following message in purify.output:
> >>
> >> FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
> >>    * File info: ?r--r--r--  1 root     root             0 May 11  2002
> >>    * This file descriptor was allocated from:
> >> __open64       [libc.so.1]
> >> _open64        [libc.so.1]
> >> _nsc_trydoorcall [libc.so.1]
> >> _door_gethostbyname_r [gethostby_door.c]
> >> _get_hostserv_inetnetdir_byname [netdir_inet.c]
> >> gethostbyname_r [gethostbyname_r.c]
> >>
> >> Its seems to be allocated by gethostbyname - any ideas how to
deallocate
> >> it?
> >>
> >> Thanks,
> >> Nishant
> >>
> >>
> >>
> >>
> >
> >
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sun, 19 Jan 2003 07:38:37 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 30
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042961917 22321 171.64.15.112 (19 Jan 2003 07:38:37 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3821

The Purify FAQ seems to indicate that this particular
FIU error message is normal.

SteveJ

In article 
Nishant Verman   wrote:
>I'm getting the following message in purify.output:
>
>FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
>   * File info: ?r--r--r--  1 root     root             0 May 11  2002
>   * This file descriptor was allocated from:
>	__open64       [libc.so.1]
>	_open64        [libc.so.1]
>	_nsc_trydoorcall [libc.so.1]
>	_door_gethostbyname_r [gethostby_door.c]
>	_get_hostserv_inetnetdir_byname [netdir_inet.c]
>	gethostbyname_r [gethostbyname_r.c]
>
>Its seems to be allocated by gethostbyname - any ideas how to deallocate
>it?
>
>Thanks,
>Nishant
>
>
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: PORT argument
Date: Sun, 19 Jan 2003 07:41:30 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042962090 22408 171.64.15.112 (19 Jan 2003 07:41:30 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3822

In article 
Keith Simmons  wrote:
>RFC 959 specifies the PORT argument as a comma delimited set of six numbers
>h1,h2,h3,h4,p1,p2.   The arguments h1 through h4 are decimal representations
>of each byte in the four byte ip address and p1/p2 are decimal
>representation of the two bytes in the port number.  Do we put these bytes
>in network order?  Thanks for the help.

These bytes should be in network order.

SteveJ

>
>Keith
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sun, 19 Jan 2003 07:47:04 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 72
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042962424 22473 171.64.15.112 (19 Jan 2003 07:47:04 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3823

Suppressing purify errors is not the right answer, in my opinion.
You could try it as a debugging step, however.  Is this the only
purify error you are seeing?

I'll check with the other TAs to see if this FIU error is still
an expected error.  Are other students seeing this as well?

SteveJ

In article 
Nishant Verman  wrote:
>yup...but I have the FIU error in the purify.output .
>
>maybe I should just setup my .purify to skip these errors - would that be
>ok?
>
>nishant
>
>
>"Steve Jacobson"  wrote in message

>>
>> Are you specifying purify.output in your list of files?
>>
>> SteveJ
>>
>> In article 
>> Nishant Verman  wrote:
>> >Apparently the autograder fails me on the last test for this - I get a
>> >message saying:
>> >
>> >Test O [out of 1]
>> >Checks that you did indeed run purify!
>> >Results:   NOT OK :(
>> >purify.output did not match expected regexp.
>> >
>> >Am I failing this because of the previously mentioned error?
>> >
>> >
>> >
>> >"Nishant Verman"  wrote in message
>> 
>> >> I'm getting the following message in purify.output:
>> >>
>> >> FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
>> >>    * File info: ?r--r--r--  1 root     root             0 May 11  2002
>> >>    * This file descriptor was allocated from:
>> >> __open64       [libc.so.1]
>> >> _open64        [libc.so.1]
>> >> _nsc_trydoorcall [libc.so.1]
>> >> _door_gethostbyname_r [gethostby_door.c]
>> >> _get_hostserv_inetnetdir_byname [netdir_inet.c]
>> >> gethostbyname_r [gethostbyname_r.c]
>> >>
>> >> Its seems to be allocated by gethostbyname - any ideas how to
>deallocate
>> >> it?
>> >>
>> >> Thanks,
>> >> Nishant
>> >>
>> >>
>> >>
>> >>
>> >
>> >
>>
>>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sun, 19 Jan 2003 00:13:22 -0800
Lines: 43
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1042964004 23914 128.12.185.34 (19 Jan 2003 08:13:24 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3824

Umm...it randomly worked this time [test O].

Could it be because my .purify previously was a blank file?

NishantV



"Steve Jacobson"  wrote in message

> The Purify FAQ seems to indicate that this particular
> FIU error message is normal.
>
> SteveJ
>
> In article

> Nishant Verman   wrote:
> >I'm getting the following message in purify.output:
> >
> >FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
> >   * File info: ?r--r--r--  1 root     root             0 May 11  2002
> >   * This file descriptor was allocated from:
> > __open64       [libc.so.1]
> > _open64        [libc.so.1]
> > _nsc_trydoorcall [libc.so.1]
> > _door_gethostbyname_r [gethostby_door.c]
> > _get_hostserv_inetnetdir_byname [netdir_inet.c]
> > gethostbyname_r [gethostbyname_r.c]
> >
> >Its seems to be allocated by gethostbyname - any ideas how to deallocate
> >it?
> >
> >Thanks,
> >Nishant
> >
> >
> >
> >
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sun, 19 Jan 2003 09:28:19 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 52
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1042968499 26059 171.64.15.112 (19 Jan 2003 09:28:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3825

Anything that would lead to an atypical or blank output file
is suspect.

SteveJ

In article 
Nishant Verman  wrote:
>Umm...it randomly worked this time [test O].
>
>Could it be because my .purify previously was a blank file?
>
>NishantV
>
>
>
>"Steve Jacobson"  wrote in message

>> The Purify FAQ seems to indicate that this particular
>> FIU error message is normal.
>>
>> SteveJ
>>
>> In article

>> Nishant Verman   wrote:
>> >I'm getting the following message in purify.output:
>> >
>> >FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
>> >   * File info: ?r--r--r--  1 root     root             0 May 11  2002
>> >   * This file descriptor was allocated from:
>> > __open64       [libc.so.1]
>> > _open64        [libc.so.1]
>> > _nsc_trydoorcall [libc.so.1]
>> > _door_gethostbyname_r [gethostby_door.c]
>> > _get_hostserv_inetnetdir_byname [netdir_inet.c]
>> > gethostbyname_r [gethostbyname_r.c]
>> >
>> >Its seems to be allocated by gethostbyname - any ideas how to deallocate
>> >it?
>> >
>> >Thanks,
>> >Nishant
>> >
>> >
>> >
>> >
>>
>>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Office hours Monday...
Date: Sun, 19 Jan 2003 15:36:17 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: colorado.stanford.edu
X-Trace: news.Stanford.EDU 1042990577 5532 171.64.74.34 (19 Jan 2003 15:36:17 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-17.7.x (i686))
Xref: shelby.stanford.edu su.class.cs244a:3826

Everyone,

I will hold office hours on Monday at their usual time and location.

Happy coding for assignment #1!

  Guido
.

Path: shelby.stanford.edu!epic1.Stanford.EDU!smadhura
From: Madhura Sudhakar Sharangpani 
Newsgroups: su.class.cs244a
Subject: test script time out
Date: Sun, 19 Jan 2003 10:43:53 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic1.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043001837 9202 171.64.15.34 (19 Jan 2003 18:43:57 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3827

When I run the tests in test script individually, they run properly &
pretty fast, but when I run script, it times out & gives results of 2
tests NOT OK due to time out, rest all tests come ok,
what must be the problem?

madhura

.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 5 Questions/comments about hw1 assignment
Date: Sun, 19 Jan 2003 19:20:46 +0000 (UTC)
Lines: 55
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine18.stanford.edu
X-Trace: news.Stanford.EDU 1043004046 10170 171.64.15.83 (19 Jan 2003 19:20:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3828



>1) Sometimes when I try to run the testing script I get : Connection
>timed out
>----------------
>elaine4:~/class/cs244a/tests> /usr/class/cs244a/bin/test_code.pl hw1
>Makefile *.c *h purify.output .purify
>/usr/class/cs244a/bin/test_code.pl: Connection timed out.
>----------------
>Some other times it works OK, but I was wondering what is happening
>here.

I'd need to see the full output to figure out what's going on.

>2) I originally was using several connections to the ftp server in
>parallel in order to
>speed up the transfer of several files in parallel but it seems that
>this is not allowed because you test
>our programs in such a way that the ftp server only allows ONE
>connection at a time.
>This seems like a very artificial restriction. Why don't you run the
>tests with  "ftpd -f"
>instead?

I can't easily fix this without changing also the scripts themselves,
so I'm going to leave this as is for the moment.  (The -f option means the
scripts have to manually kill the parent ftpd process after they're done.
This is a fairly minimal change to the code, but not one I want to introduce
now while students are using it for testing).

>4) In FAQ Q22 and in the assignment handout it is said that we should
>not
>expect replies longer than 1024 bytes but the ftp server
>ftp.slac.stanford.edu  that you use as part of the testing has a welcome
>message much longer than 1024. Could you clarify? Shouln't you either
>revise the assignment
>and FAQ or change the server?.

I've revised the FAQ.  (The assignment looks fine to me).  To clarify:
you may assume that an individual line of NVT ASCII is 1024 characters or
less, but a total response may exceed this, as it does for ftp.slac.

>5) In FAQ Q16 it is said that we are not required to support non RFC
>compliant
>servers. It seems to me that test L.6 is using a non-compliant ftp
>server because
>the reply that this server gives doesn't have any valid reply code.

I assume you mean L.5, i.e. the test against a non-anonymous server.
When the scripts were written, ftping into elaines was allowed, but
this is apparently no longer the case.  I've changed this to try and
ftp from transfer.stanford.edu instead.

Matthew

.

Path: shelby.stanford.edu!not-for-mail
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: 5 Questions/comments about hw1 assignment
Date: Sun, 19 Jan 2003 12:06:45 -0800
Lines: 73
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: adsl-64-172-97-243.dsl.snfc21.pacbell.net
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043006843 11174 64.172.97.243 (19 Jan 2003 20:07:23 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.77 [en] (Win98; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3829



Matthew Jonathan Holliman wrote:

> >1) Sometimes when I try to run the testing script I get : Connection
> >timed out
> >----------------
> >elaine4:~/class/cs244a/tests> /usr/class/cs244a/bin/test_code.pl hw1
> >Makefile *.c *h purify.output .purify
> >/usr/class/cs244a/bin/test_code.pl: Connection timed out.
> >----------------
> >Some other times it works OK, but I was wondering what is happening
> >here.
>
> I'd need to see the full output to figure out what's going on.
>

I don't understand what do you mean by the full output.
The only thing I get is what I posted above: Connection timed out.
Nothing else. This was not a line inside any of the tests.
Anyway, I think it had to be some transient connectivity error that happened
with that
particular elaine and the afs server. I haven't had that problem with
other elaines.


>
> >2) I originally was using several connections to the ftp server in
> >parallel in order to
> >speed up the transfer of several files in parallel but it seems that
> >this is not allowed because you test
> >our programs in such a way that the ftp server only allows ONE
> >connection at a time.
> >This seems like a very artificial restriction. Why don't you run the
> >tests with  "ftpd -f"
> >instead?
>
> I can't easily fix this without changing also the scripts themselves,
> so I'm going to leave this as is for the moment.  (The -f option means the
> scripts have to manually kill the parent ftpd process after they're done.
> This is a fairly minimal change to the code, but not one I want to introduce
> now while students are using it for testing).
>

I understand and agree, but I'd like to suggest that you add a comment to the
assignment for future classes. I spent a great deal of time writing a
multithreaded
ftpcopy program that I had to scrap and convert to unithreaded. I thought that
program speed was going to be an important consideration.
I understand that part of the problem is that I developed the assignment without

using the systems at Stanford but you should take into account that for us
SITN students is not always easy or convenient to do all our development
in those systems.
I just want to make sure other students in the future do not waste their time
as I did. This, and the other issues/comments that I posted in my original post
made my assigment go well past the 15 hour mark.


>
>
> I assume you mean L.5, i.e. the test against a non-anonymous server.
> When the scripts were written, ftping into elaines was allowed, but
> this is apparently no longer the case.  I've changed this to try and
> ftp from transfer.stanford.edu instead.
>

Thanks although I already changed my code to report an error if it finds
that the reply is not a compliant reply.

Rafa


.

Path: shelby.stanford.edu!saga11.Stanford.EDU!jlreyes
From: Jorge 
Newsgroups: su.class.cs244a
Subject: FTP server reply 120
Date: Sun, 19 Jan 2003 12:19:50 -0800
Lines: 31
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043007593 11461 171.64.15.141 (19 Jan 2003 20:19:53 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3830


I have a quick question.  What should ftpcopy do if the FTP server replies
with a code of 120 "Service ready in nnn minutes."  Should we just wait
and wait until the server returns 220 or should we treat 120 as an error
message?

thanks,
Jorge


********************************************************************************

It is a fact that people are always well aware of what
is due them.  Unfortunately, they remain oblivious of
what they owe to others. - St. Francis de Sales

********************************************************************************


                                             Jorge L. Reyes
                                             Potter 207

                                             P. O. Box 17091
                                             Stanford, CA 94309

                                             650.497.6375

                                             
                                             http://www.stanford.edu/~jlreyes


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: file extensions
Date: Sun, 19 Jan 2003 20:22:47 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 41
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1043007767 11555 171.64.15.112 (19 Jan 2003 20:22:47 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3831

The TAs have decided that this file extension behavior
is correct.

SteveJ

In article 
Steve Jacobson  wrote:
>I agree, but will confer with the other TAs for the definitive
>answer.
>
>SteveJ
>
>In article 
>Rafael M Hernandez   wrote:
>>Hi,
>>according to Q20 in the FAQ handout "gz" matches "*.gz"
>>so I'd think that ".gz" should match extension "*..gz" (note: two dots)
>>and not "*.gz", in the same way "gz" does not match "*gz".
>>Not to be nit-picking here but I would hate to
>>fail some test because of this.
>>
>>Could you clarify?
>>Thanks
>>Rafa
>>
>>
>>Russell Greene wrote:
>>
>>> "David Seetapun"  wrote in message
>>> 
>>> >
>>> > should ".gz" be considered to have extension .gz?
>>>
>>> Yes
>>>
>>> --Russ
>>
>
>


.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script time out
Date: Sun, 19 Jan 2003 20:58:06 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1043009886 12318 171.64.15.107 (19 Jan 2003 20:58:06 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3832


>When I run the tests in test script individually, they run properly &
>pretty fast, but when I run script, it times out & gives results of 2
>tests NOT OK due to time out, rest all tests come ok,
>what must be the problem?

The script gives you three minutes for the normal tests (and probably
an unlimited amount of time on the Purify test cases), which should be
more than long enough.  Be sure that when you test manually that you're
testing the same arguments (path types, servers, etc.) as the script,
as often people find the script catching errors they'd overlooked during
manual testing.
.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: FIU error
Date: Sun, 19 Jan 2003 21:00:40 +0000 (UTC)
Lines: 17
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1043010040 12505 171.64.15.107 (19 Jan 2003 21:00:40 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3833


>Apparently the autograder fails me on the last test for this - I get a
>message saying:

>Test O [out of 1]
>Checks that you did indeed run purify!
>Results:   NOT OK :(
>purify.output did not match expected regexp.

>Am I failing this because of the previously mentioned error?

No--the script checks for this particular FIU as a special case, and ignores
it.  The particular error message you saw indicated that your purify.output
didn't follow the syntax expected by the script.  I'm not sure why this
would be so, but if you encounter this error again, please keep a copy of
your purify.output around and let me know.

.

Path: shelby.stanford.edu!not-for-mail
From: Kirk Phelps 
Newsgroups: su.class.cs244a
Subject: Re: Connection reset by peer?
Date: Sun, 19 Jan 2003 15:48:18 -0800
Lines: 24
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine26.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043020098 16650 171.64.15.101 (19 Jan 2003 23:48:18 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3835

I figured this problem out...just thought I'd post the answer in case
other people are having similar issues. 

In the process of decomping my code, I accidentally duplicated the code
where I call "connect" on the data socket.  Therefore, I was
"connecting" twice on the same socket.  Removing the extra call fixed
the problem.

-Kirk

Steve Jacobson wrote:
> 
> I would need to see the sequence of socket commands.  You can
> email the code to me if it's not appropriate to post.
> 
> SteveJ
> 
> In article 
> Nordstrom Kirk Phelps   wrote:
> >In the process of trying to get a directory listing from the server, I
> >set PASV, connect to the port and ip specified, wait for the transfer to
> >complete (226) and then read from the socket.  This read command returns
> >a -1, and sets the sys error string to "Connection reset by peer".  Does
> >anyone know why this is happening?  Thanks.
.

Path: shelby.stanford.edu!epic15.Stanford.EDU!smadhura
From: Madhura Sudhakar Sharangpani 
Newsgroups: su.class.cs244a
Subject: Test script time out again
Date: Sun, 19 Jan 2003 16:35:28 -0800
Lines: 26
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043022930 19108 171.64.15.48 (20 Jan 2003 00:35:30 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3836

Hi
I still cannot solve timeout problem
My program works fine till test L.1
But it times out for tests L.1 to L.4 when it is being tested with the
ftpd daemon, using 
for following test:
---------------------------------------------------------------
Test L.1, using current source tree and build
make
Working dir:
/afs/ir.stanford.edu/users/s/m/smadhura/cs244a/testcode/grading_src/build
Starting local ftpd: cd
/usr/class/cs244a/grading_script/hw1_special_cases;
/usr/class/cs244a/WWW/homeworks/hw1/ftpd_src/wu-ftpd-2.0/bin/ftpd 2>
/afs/ir.stanford.edu/users/s/m/smadhura/cs244a/testcode/grading_src/build/.ftpd_port&
ftpd running on port 51177
Testing special case:  ../ftpcopy ext 1 
--------------------------------------------------------------
I tried running the same test manually, & it works just fine without any
problem, but when given to test script, it times out, & I am not
understanding why,
after test L.4,onwards for remaining tests ,ie L.7, L.5 & so on it again
works fine,
Please help
Madhura.

.

Path: shelby.stanford.edu!cardinal5.Stanford.EDU!priyank9
From: Priyank Kshitij Patel 
Newsgroups: su.class.cs244a
Subject: extensions & zero byte files
Date: Sun, 19 Jan 2003 16:49:20 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: cardinal5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043023761 19426 171.64.15.253 (20 Jan 2003 00:49:21 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3837

just 2 quick questions :

1. is the extension "gz" supposed to match "abgz"
   or only the "*.gz" files....

2. how does the client handle zero byte files which match the
extension and have necessary permissions for download.

Is the client supposed to create them in the destination directory or not?
Apparently during one of the TA sessions the message that was conveyed was
that we are not suppposed to create such files.  However the last year's
newsgroup suggests otherwise.

Please clarify!!
Priyank

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: Test L.1
Date: Sun, 19 Jan 2003 16:59:19 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine32.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043024360 19682 171.64.15.107 (20 Jan 2003 00:59:20 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3838

For the zero byte file test, should the ftpcopy create the zero byte file
or not?

I pass the test irrespective of what I do!

Nishant



.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!pavan
From: Pavan Singitham 
Newsgroups: su.class.cs244a
Subject: Handling permission denied for transferring files
Date: Sun, 19 Jan 2003 17:41:32 -0800
Lines: 38
Distribution: su
Message-ID: 
References:  
 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043026895 20811 171.64.15.74 (20 Jan 2003 01:41:35 GMT)
X-Complaints-To: 
To: Kirk Phelps 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3839

Hi ,
	I got this problem.. if I find a few files for which we have no
permissions to transfer, my ftp skips them. But when I try to retrieve
the next file for which I have permissions, my program hangs.
	I am using a PASV and connecting before each RETR.
	I observed that the server port number always remains the same
over all the permission denied files and the last file I can access.(
where it is blocking).ie. the server is not closing it's end ! and I am
connecting to the same socket each time.
	What can we do about this? Kirk, I think you had a similar
problem!?
thanx,
Pavan.

On Sun, 19 Jan 2003, Kirk Phelps wrote:

> I figured this problem out...just thought I'd post the answer in case
> other people are having similar issues.
>
> In the process of decomping my code, I accidentally duplicated the code
> where I call "connect" on the data socket.  Therefore, I was
> "connecting" twice on the same socket.  Removing the extra call fixed
> the problem.
>
> -Kirk
>
> > Nordstrom Kirk Phelps   wrote:
> > >In the process of trying to get a directory listing from the server, I
> > >set PASV, connect to the port and ip specified, wait for the transfer to
> > >complete (226) and then read from the socket.  This read command returns
> > >a -1, and sets the sys error string to "Connection reset by peer".  Does
> > >anyone know why this is happening?  Thanks.
>

---
www.stanford.edu/~pavan
Help stamp out and abolish redundancy and repetition.

.

Path: shelby.stanford.edu!saga17.Stanford.EDU!myc
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: reply code and freeing memory
Date: Mon, 20 Jan 2003 02:23:26 -0800
Lines: 47
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043058211 4933 171.64.15.147 (20 Jan 2003 10:23:31 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3840

Hi,

I have the following question concerning hw1.

1. RFC specified that CWD command can return 550 for "Requested action not
taken", without mentioning 553. But in my testing, I saw 553 returned as
reply to CWD command for Permission Denied, while 550 returned for
non-existing directory. I am wondering if the replying code in RFC
strictly followed or some servers can have their own flexibility to define
some reply code? More specifically, can I assume the following always hold
for the testing servers in this assignment?

- CWD:  550 <==> directory not exist
- CWD:  553 <==> permission denied
- RETR: 550 <==> permission denied

2. If user defined srcDir on server is there, but permission denied,
should the program exit as FAILURE or SUCCESS(permission problem
tolerated)?

3. It is said that we can treat 4xx and 5xx reply code as hard error.
Since we should handle 550 seperately, should we also handle 450, which
means the file for RETRing is currently busy and retry later? If we should
retry, I assume we can simply repeat step 7, which is sending RETR to
server, in the 8-step protocol in handout. This scenario is hard to test.
Please clarify if we need this case handled at least in our source code.

4. In previous posting it is said that we should try to free up any memory
even when errors occur and program exits as FAILURE. I am wondering how it
is determined that all memory are freed. Is that satisfying if purify
gives "Memory leaked: 0 bytes (0%); potentially leaked: 0 bytes (0%)"?
I've tried intentionally to leak some memory with program exit(1) but
purify didn't pick it up. I suspect that purify just doesn't care about
memory leak if program exits abnormally, since the software crashes and
the address space associated with it will immediately be reclaimed by the
OS anyway. Would you please clarify if that is always the expected
behavior from purify? Frankly, I don't see why freeing up memory on error
exit is necessary because of the reason stated above. If I do have
to take care of it, I have to hack on my code everywhere to add tests to
see if some memory needs to be freed. It can make code look messy and run
time ineffecient. So I want to make sure that I have to do it before
start.

Thanks.
Mingying


.

Path: shelby.stanford.edu!epic18.Stanford.EDU!sansari
From: Saad Salman Ansari 
Newsgroups: su.class.cs244a
Subject: Re: Problem with ftp.slac.stanford.edu
Date: Mon, 20 Jan 2003 03:00:39 -0800
Lines: 39
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: epic18.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043060441 5827 171.64.15.53 (20 Jan 2003 11:00:41 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3841

ok so we poll the server for the 226 transfer complete response, AFTER we
have read the list from the data connection. After reading the list
however, I try to CWD to a particular directory on slac and it gives the
following response:

150 Opening ASCII mode data connection for file list

and then blocks. Any ideas on why it does not follow-up with a 250 CWD
successful response? I'm not using PASV mode, so I'm not using shutdown.
If anyone has faced the same problem, could you help me out?

thanks!

Saad

On Sat, 18 Jan 2003, Michael Ching wrote:

> Related to the problems posted by David Seetapun, I too ran into problems
> with ftp.slac.stanford.edu.  Whenever I issue the list command, the system
> seem to hang while waiting for the 226 transfer complete response.  This
> doesn't happen with any other ftp servers.  With David's help and some
> poking around, I discover the following solution.
>
> For whatever reason, the slac server will only issue the 226 response
> after the data connection has been closed.  Since I issue the close()
> command at the end of my procedure, after pulling the connection socket
> for a response, it just hangs.  You must close the data connection right
> after receiving the list and before pulling the connection socket for the
> 226 response.  For those of you using PASV, that means you need to issue
> the shutdown command to the data connection, before pulling the connection
> socket for the 226 response.  This way the slac server can shutdown the
> data connection right after transmitting the list.
>
> I hope this will save some of you a couple of hours of hair pulling. :)
>
> Mike
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: ftpparse difficulties with ftp.stanford.edu and ftpd
Date: Mon, 20 Jan 2003 08:15:33 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1043079336 13611 128.12.106.31 (20 Jan 2003 16:15:36 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3842

It seems that the LIST data returned by ftp.stanford.edu and ftpd aren't
terminated by a "/r/n" after each line.  If that's the case, then ftpparse
will not work correctly (because the strstr calls, splitting on kTelnetEOF =
/r/n, will be NULL), and all the files will be skipped over.

Most ftp sites (ftp.microsoft.com, ftp.cs.stanford.edu, and others) seem to
do the /r/n line termination.  I only get the problem with ftpd and
ftp.stanford.edu.  My program works correctly if I set the ftpparse
kTelnetEOF #define to "\n" only.  Is this ok?  I can see cases (maybe some
stray /n's) where this fix would incorrectly parse as well, but it seems to
work for all given ftp sites.

I'm pretty sure I'm getting the LIST data connection reply correctly and I'm
storing it correctly as well; and as I said, it works for most ftp sites...

Any ideas?

Srinivas


.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: bind() issues
Date: Mon, 20 Jan 2003 09:33:06 -0800
Lines: 22
Distribution: su
Message-ID: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1043083988 15266 128.12.106.31 (20 Jan 2003 17:33:08 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3843

The first time I use bind(), sent in with addr structure filled in with
host's IP, and port of 0, bind() works fine and gives me an ephemeral port.

The second time I use bind(), sent in with addr structure filled exatly the
same (port set to 0, IP correct), bind() keeps giving me back 0 as the
ephemeral port.  i.e. it's not giving me a free port, it's basically doing
nothing at all.

Also, I tried to force bind to give me the same port twice, to try to work
around it not giving me an ephemeral port.  That doesn't work, and bind just
fails (returns -1).

I worked around it as follows: I pick a random number for the port (40000 -
40099), and then bind is forced to give me that port.  H owever, once in a
while, these ports are busy, and my program exits.  Perhaps, are we forced
to do it the way ftp does, to cycle around from 40000 - 40099 until we find
a good port?

Any ideas on why bind can't be used twice like this?  I think I close my
connections...


.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: Re: ftpparse difficulties with ftp.stanford.edu and ftpd
Date: Mon, 20 Jan 2003 10:20:35 -0800
Lines: 36
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1043086838 16505 128.12.106.31 (20 Jan 2003 18:20:38 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3844

It seems that LIST must be sent over as ASCII format.  That fixed this
particilar issue, and both "troubling" ftp servers seem to give /r/n now.

I guess I had to be more careful with my choice of TYPE, switching between
ascii and image.


"Srinivas Panguluri"  wrote in message

> It seems that the LIST data returned by ftp.stanford.edu and ftpd aren't
> terminated by a "/r/n" after each line.  If that's the case, then ftpparse
> will not work correctly (because the strstr calls, splitting on kTelnetEOF
=
> /r/n, will be NULL), and all the files will be skipped over.
>
> Most ftp sites (ftp.microsoft.com, ftp.cs.stanford.edu, and others) seem
to
> do the /r/n line termination.  I only get the problem with ftpd and
> ftp.stanford.edu.  My program works correctly if I set the ftpparse
> kTelnetEOF #define to "\n" only.  Is this ok?  I can see cases (maybe some
> stray /n's) where this fix would incorrectly parse as well, but it seems
to
> work for all given ftp sites.
>
> I'm pretty sure I'm getting the LIST data connection reply correctly and
I'm
> storing it correctly as well; and as I said, it works for most ftp
sites...
>
> Any ideas?
>
> Srinivas
>
>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test script time out again
Date: Mon, 20 Jan 2003 18:29:25 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043087365 16615 171.64.15.117 (20 Jan 2003 18:29:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3845


>I still cannot solve timeout problem
>My program works fine till test L.1
>But it times out for tests L.1 to L.4 when it is being tested with the
>ftpd daemon, using 
>for following test:

If you haven't already done so, you might try testing against ftpd
running with the same (or similar) directory structure on the server as
used in the test script cases.  Incorrect handling of these special cases
has resulted in the program behaviour you describe for other students also.
Other than that, there's not much I can suggest except for more testing.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: extensions & zero byte files
Date: Mon, 20 Jan 2003 18:36:16 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043087776 16825 171.64.15.117 (20 Jan 2003 18:36:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3846


>1. is the extension "gz" supposed to match "abgz"
>   or only the "*.gz" files....

Please see FAQ #20.

>2. how does the client handle zero byte files which match the
>extension and have necessary permissions for download.

Exactly the same way as any other file for which you have a matching extension
and download permissions.
.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test L.1
Date: Mon, 20 Jan 2003 18:39:18 +0000 (UTC)
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043087958 16873 171.64.15.117 (20 Jan 2003 18:39:18 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3847


>For the zero byte file test, should the ftpcopy create the zero byte file
>or not?

You should create the file exactly as you would any other.

>I pass the test irrespective of what I do!

Did you create the file in an initial run, and then not create it in a
later run?  If so, unless you explicitly removed the grading_src directory,
the older file would still be lying around, in which case you'd continue to
pass the test (erroneously).

If you remove the grading_src directory (to start completely anew) and
run the test without creating the file, you should see an error--or at
least I do.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: reply code and freeing memory
Date: Mon, 20 Jan 2003 18:53:49 +0000 (UTC)
Lines: 61
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043088829 17416 171.64.15.117 (20 Jan 2003 18:53:49 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3848


>1. RFC specified that CWD command can return 550 for "Requested action not
>taken", without mentioning 553. But in my testing, I saw 553 returned as
>reply to CWD command for Permission Denied, while 550 returned for
>non-existing directory. I am wondering if the replying code in RFC
>strictly followed or some servers can have their own flexibility to define
>some reply code? More specifically, can I assume the following always hold
>for the testing servers in this assignment?

>- CWD:  550 <==> directory not exist
>- CWD:  553 <==> permission denied
>- RETR: 550 <==> permission denied

With the possible exception of the initial CWD into the directory specified
by the user, you won't ordinarily be CWDing into a non-existent directory
during your descent (since you've obtained the name from a directory listing,
so it must exist--you can assume the target directory won't be deleted during
your program's execution).  So you won't generally encounter this error.
I'd advise against interpreting the reply codes too stringently--they're
intended to help software identify the problem, but it's not clear how
closely different ftpd implementations would agree on fine details.

>2. If user defined srcDir on server is there, but permission denied,
>should the program exit as FAILURE or SUCCESS(permission problem
>tolerated)?

You should treat this the same as a non-existent remote directory.

>3. It is said that we can treat 4xx and 5xx reply code as hard error.
>Since we should handle 550 seperately, should we also handle 450, which
>means the file for RETRing is currently busy and retry later? If we should
>retry, I assume we can simply repeat step 7, which is sending RETR to
>server, in the 8-step protocol in handout. This scenario is hard to test.
>Please clarify if we need this case handled at least in our source code.

Nope, you can treat any error of type 4xx as a fatal error.

>4. In previous posting it is said that we should try to free up any memory
>even when errors occur and program exits as FAILURE. I am wondering how it
>is determined that all memory are freed. Is that satisfying if purify
>gives "Memory leaked: 0 bytes (0%); potentially leaked: 0 bytes (0%)"?
>I've tried intentionally to leak some memory with program exit(1) but
>purify didn't pick it up. I suspect that purify just doesn't care about
>memory leak if program exits abnormally, since the software crashes and
>the address space associated with it will immediately be reclaimed by the
>OS anyway. Would you please clarify if that is always the expected
>behavior from purify? Frankly, I don't see why freeing up memory on error
>exit is necessary because of the reason stated above. If I do have
>to take care of it, I have to hack on my code everywhere to add tests to
>see if some memory needs to be freed. It can make code look messy and run
>time ineffecient. So I want to make sure that I have to do it before
>start.

I'm not sure why Purify doesn't always pick this up.  However, as we
said previously, you should get in the habit of freeing memory.  If you
were implementing ftpcopy's functionality in a larger application, you
wouldn't have the luxury of just ignoring memory leaks and relying on the
O/S to clean up after you.  It shouldn't be much extra work to clean up
after an error--and if it is (or leads to inelegant code), you might want
to rethink your approach.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: bind() issues
Date: Mon, 20 Jan 2003 18:58:41 +0000 (UTC)
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043089121 17515 171.64.15.117 (20 Jan 2003 18:58:41 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3849


>The second time I use bind(), sent in with addr structure filled exatly the
>same (port set to 0, IP correct), bind() keeps giving me back 0 as the
>ephemeral port.  i.e. it's not giving me a free port, it's basically doing
>nothing at all.

>I worked around it as follows: I pick a random number for the port (40000 -
>40099), and then bind is forced to give me that port.  H owever, once in a
>while, these ports are busy, and my program exits.  Perhaps, are we forced
>to do it the way ftp does, to cycle around from 40000 - 40099 until we find
>a good port?

I don't know what's wrong without looking at your code, but this is definitely
not the right way to handle this.  What does errno/perror indicate from the
second bind() call?  (Be sure to set errno = 0 before the call to clear
any previous system call failure's record).

.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: using pasv and test script
Date: Mon, 20 Jan 2003 11:22:42 -0800
Lines: 24
Distribution: su
Message-ID: 
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1043090564 18584 128.12.22.55 (20 Jan 2003 19:22:44 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3850

When using the test script, I fail the absolute and relative path test
because
it says there are differences between the outputs. It tells me the
differences are:
54,55c54,55
< 227 Entering Passive Mode (134,79,18,30,143,190).
< OK: connecting to 134.79.18.30:36798
---
> 227 Entering Passive Mode (134,79,18,30,165,49).
> OK: connecting to 134.79.18.30:42289

In a previous post it was mentioned that it was OK to use the passive mode
(PASV).
However, when using PASV, the server returns the IP and Port number to use.
Is the Port supposed to be
the same for different runs? It seems to make sense that there should be a
difference unless the script is
fixing the port number... or if I'm using PASV should I not be printing out
the port? I think I'd pass the test
since these are the only differences it finds...

                  -- Sanders


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: using pasv and test script
Date: Mon, 20 Jan 2003 19:32:16 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043091136 18940 171.64.15.117 (20 Jan 2003 19:32:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3851


>When using the test script, I fail the absolute and relative path test
>because
>it says there are differences between the outputs. It tells me the
>differences are:
>54,55c54,55
>< 227 Entering Passive Mode (134,79,18,30,143,190).
>< OK: connecting to 134.79.18.30:36798
>---
>> 227 Entering Passive Mode (134,79,18,30,165,49).
>> OK: connecting to 134.79.18.30:42289

Are you printing this information to stdout?

.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: Re: bind() issues
Date: Mon, 20 Jan 2003 12:24:28 -0800
Lines: 45
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1043094269 20861 128.12.106.31 (20 Jan 2003 20:24:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3852

errno depends on if I close the socket before hand.

if I do close(dataSock), I get errno = 9, Bad File Number (EBADF)  ? Maybe I
have to create a new socket?

if I don't close(dataSock), I get errno = 22, Invalid Argument. (EINVAL) ?
Maybe you can't re-bind a socket?

if I close the socket, and create a new one with the socket() command, bind
works, but it doesn't give me an ephemeral port (it just returns 0 as the
ephemeral port), which sucks.

It's weird, guess I'm going to office hours.

Srinivas

"Matthew Jonathan Holliman"  wrote in message

>
> >The second time I use bind(), sent in with addr structure filled exatly
the
> >same (port set to 0, IP correct), bind() keeps giving me back 0 as the
> >ephemeral port.  i.e. it's not giving me a free port, it's basically
doing
> >nothing at all.
>
> >I worked around it as follows: I pick a random number for the port
(40000 -
> >40099), and then bind is forced to give me that port.  H owever, once in
a
> >while, these ports are busy, and my program exits.  Perhaps, are we
forced
> >to do it the way ftp does, to cycle around from 40000 - 40099 until we
find
> >a good port?
>
> I don't know what's wrong without looking at your code, but this is
definitely
> not the right way to handle this.  What does errno/perror indicate from
the
> second bind() call?  (Be sure to set errno = 0 before the call to clear
> any previous system call failure's record).
>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: bind() issues
Date: Mon, 20 Jan 2003 20:32:44 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043094764 21086 171.64.15.117 (20 Jan 2003 20:32:44 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3853


>if I do close(dataSock), I get errno = 9, Bad File Number (EBADF)  ? Maybe I
>have to create a new socket?

Yep--once you close() it, it's finished with.  You create a brand-new socket
exactly as before, with socket() etc.

>if I don't close(dataSock), I get errno = 22, Invalid Argument. (EINVAL) ?
>Maybe you can't re-bind a socket?

Correct (as far as I know).  You can close the socket, and repeat the
whole procedure next time (socket, bind, etc.)

>if I close the socket, and create a new one with the socket() command, bind
>works, but it doesn't give me an ephemeral port (it just returns 0 as the
>ephemeral port), which sucks.

bind() itself won't tell you the port--it leaves the structure fields
unchanged.  If bind() doesn't return an error, getsockname() should
give you the local port number.

.

Path: shelby.stanford.edu!not-for-mail
From: "Howard Tsai" 
Newsgroups: su.class.cs244a
Subject: Re: Problem with ftp.slac.stanford.edu
Date: Mon, 20 Jan 2003 15:00:59 -0800
Lines: 59
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: ev-02-lr90f.stanford.edu
X-Trace: news.Stanford.EDU 1043103659 25832 128.12.158.11 (20 Jan 2003 23:00:59 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3854

I think had that problem too, and I'm not using PASV.  As the previous post
says, SLAC seems to hang if the data connection isn't closed.  I made sure I
closed the data connection sockets(both the listening and the connecteded
one) before polling for the 226 transfer complete response, and then
afterwards I issue the CWD command.

I'm not sure how people doing it, but I create a new listening socket for
each data transfer because I couldn't get a way to resuse one. But the trick
for me was to close the socket before polling on the control socket.

Howard

"Saad Salman Ansari"  wrote in message

> ok so we poll the server for the 226 transfer complete response, AFTER we
> have read the list from the data connection. After reading the list
> however, I try to CWD to a particular directory on slac and it gives the
> following response:
>
> 150 Opening ASCII mode data connection for file list
>
> and then blocks. Any ideas on why it does not follow-up with a 250 CWD
> successful response? I'm not using PASV mode, so I'm not using shutdown.
> If anyone has faced the same problem, could you help me out?
>
> thanks!
>
> Saad
>
> On Sat, 18 Jan 2003, Michael Ching wrote:
>
> > Related to the problems posted by David Seetapun, I too ran into
problems
> > with ftp.slac.stanford.edu.  Whenever I issue the list command, the
system
> > seem to hang while waiting for the 226 transfer complete response.  This
> > doesn't happen with any other ftp servers.  With David's help and some
> > poking around, I discover the following solution.
> >
> > For whatever reason, the slac server will only issue the 226 response
> > after the data connection has been closed.  Since I issue the close()
> > command at the end of my procedure, after pulling the connection socket
> > for a response, it just hangs.  You must close the data connection right
> > after receiving the list and before pulling the connection socket for
the
> > 226 response.  For those of you using PASV, that means you need to issue
> > the shutdown command to the data connection, before pulling the
connection
> > socket for the 226 response.  This way the slac server can shutdown the
> > data connection right after transmitting the list.
> >
> > I hope this will save some of you a couple of hours of hair pulling. :)
> >
> > Mike
> >
> >
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: non-existing local directory
Date: Mon, 20 Jan 2003 15:27:45 -0800
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043105352 26593 128.12.196.91 (20 Jan 2003 23:29:12 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3855

If the 4th argument passed by the user (directory at the local site to
transfer into) doesn't exist, do we have to create the directory or simply
treat this as a failure ?

Please clarify on this.

Thanks,
Honggo



.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: reply code and freeing memory
Date: Mon, 20 Jan 2003 15:34:34 -0800
Lines: 40
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043105675 26794 128.12.85.0 (20 Jan 2003 23:34:35 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3856

This still raises some questions, though.

For example, if we run across a directory in a list for which we don't have
permissions, when we CWD it, should we expect to get 550 or 553? Seeing as
the assignment stipulates that we should quietly ignore all permissions
errors, we have to special case it. Which one should we special case (550 or
553), or should we special case both?

"Matthew Jonathan Holliman"  wrote in message

>
> >1. RFC specified that CWD command can return 550 for "Requested action
not
> >taken", without mentioning 553. But in my testing, I saw 553 returned as
> >reply to CWD command for Permission Denied, while 550 returned for
> >non-existing directory. I am wondering if the replying code in RFC
> >strictly followed or some servers can have their own flexibility to
define
> >some reply code? More specifically, can I assume the following always
hold
> >for the testing servers in this assignment?
>
> >- CWD:  550 <==> directory not exist
> >- CWD:  553 <==> permission denied
> >- RETR: 550 <==> permission denied
>
> With the possible exception of the initial CWD into the directory
specified
> by the user, you won't ordinarily be CWDing into a non-existent directory
> during your descent (since you've obtained the name from a directory
listing,
> so it must exist--you can assume the target directory won't be deleted
during
> your program's execution).  So you won't generally encounter this error.
> I'd advise against interpreting the reply codes too stringently--they're
> intended to help software identify the problem, but it's not clear how
> closely different ftpd implementations would agree on fine details.
>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: non-existing local directory
Date: Mon, 20 Jan 2003 23:50:37 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043106637 27305 171.64.15.117 (20 Jan 2003 23:50:37 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3857


>If the 4th argument passed by the user (directory at the local site to
>transfer into) doesn't exist, do we have to create the directory or simply
>treat this as a failure ?

This is answered in the assignment requirements.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: reply code and freeing memory
Date: Tue, 21 Jan 2003 00:04:41 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043107481 27837 171.64.15.117 (21 Jan 2003 00:04:41 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3858

>For example, if we run across a directory in a list for which we don't have
>permissions, when we CWD it, should we expect to get 550 or 553? Seeing as
>the assignment stipulates that we should quietly ignore all permissions
>errors, we have to special case it. Which one should we special case (550 or
>553), or should we special case both?

You'd expect to receive 550 (this is certainly what the reference
solution against which submissions are tested assumes, and what the RFC
states as the expected behaviour), but if 553 is also being used by some
servers you may treat both as having comparable meaning.  Having said this,
I haven't seen 553 being used in this way though, only 550.

In general, the only file system problem we're explicitly testing will be
inaccessible directories; any other 55x that didn't correspond to such a
case would be unexpected (i.e., not the focus of a test case).
.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: reply code and freeing memory
Date: Tue, 21 Jan 2003 00:08:52 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043107732 28005 171.64.15.117 (21 Jan 2003 00:08:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3859


To add to/amend my last comments (and hopefully clarify things)--

(1) If you find a server that swaps the meaning of 550 and 553 (as the first
post in this thread suggested), please let me know the server so I can verify
the behaviour.

(2) For the grading, we will test against servers that behave per the RFC
result code specifications, i.e. 550 for permission denied.

.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: OK: XXX message
Date: Mon, 20 Jan 2003 16:15:22 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043108111 28368 128.12.72.54 (21 Jan 2003 00:15:11 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3860

The specs say the output on successful completion should be "OK: xxxxxx 
bytes copied" where xxxxx is the total of all bytes copied...

Does the total mean bytes in files transfered, or all bytes transfered? 
  (i.e. can we ignore LIST responses & control messages as part of the 
total?)

-Kevin

.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: testing very large strings?
Date: Mon, 20 Jan 2003 16:29:48 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043108977 28899 128.12.72.54 (21 Jan 2003 00:29:37 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3861

Do we need to put in logic to handle extremely large inputs (i.e. a path 
of 1000 characters, etc.)?  I've written code that copies into buffers 
where I've used #define to get a large-enough maximum size, but 
conceivably these could overflow and create messy errors.  (Obviously 
this doesn't apply to file transfers; I'm referring to file paths, 
extensions, etc.)

Will the tests be deliberately trying to break code by overflowing 
static buffers?  Or am I safe with sufficiently large buffer sizes (i.e. 
256 byte max for the extension)?

-Kevin

.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Handling permission denied for transferring files
Date: Tue, 21 Jan 2003 01:35:25 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 23
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1043112925 1025 171.64.15.101 (21 Jan 2003 01:35:25 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3862

Are you getting the port number from getsockname() ?

If you are still having trouble with this code, I suggest you bring
it to TA office hours.

SteveJ

In article 
Pavan Singitham   wrote:
>Hi ,
>	I got this problem.. if I find a few files for which we have no
>permissions to transfer, my ftp skips them. But when I try to retrieve
>the next file for which I have permissions, my program hangs.
>	I am using a PASV and connecting before each RETR.
>	I observed that the server port number always remains the same
>over all the permission denied files and the last file I can access.(
>where it is blocking).ie. the server is not closing it's end ! and I am
>connecting to the same socket each time.
>	What can we do about this? Kirk, I think you had a similar
>problem!?
>thanx,
>Pavan.
>
.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem with ftp.slac.stanford.edu
Date: Tue, 21 Jan 2003 01:38:08 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 49
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1043113088 1066 171.64.15.101 (21 Jan 2003 01:38:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3863

Information has been posted today that may help you.  If you are
still having trouble, TA office hours would be a good way to get
help.

SteveJ

In article 
Saad Salman Ansari   wrote:
>ok so we poll the server for the 226 transfer complete response, AFTER we
>have read the list from the data connection. After reading the list
>however, I try to CWD to a particular directory on slac and it gives the
>following response:
>
>150 Opening ASCII mode data connection for file list
>
>and then blocks. Any ideas on why it does not follow-up with a 250 CWD
>successful response? I'm not using PASV mode, so I'm not using shutdown.
>If anyone has faced the same problem, could you help me out?
>
>thanks!
>
>Saad
>
>On Sat, 18 Jan 2003, Michael Ching wrote:
>
>> Related to the problems posted by David Seetapun, I too ran into problems
>> with ftp.slac.stanford.edu.  Whenever I issue the list command, the system
>> seem to hang while waiting for the 226 transfer complete response.  This
>> doesn't happen with any other ftp servers.  With David's help and some
>> poking around, I discover the following solution.
>>
>> For whatever reason, the slac server will only issue the 226 response
>> after the data connection has been closed.  Since I issue the close()
>> command at the end of my procedure, after pulling the connection socket
>> for a response, it just hangs.  You must close the data connection right
>> after receiving the list and before pulling the connection socket for the
>> 226 response.  For those of you using PASV, that means you need to issue
>> the shutdown command to the data connection, before pulling the connection
>> socket for the 226 response.  This way the slac server can shutdown the
>> data connection right after transmitting the list.
>>
>> I hope this will save some of you a couple of hours of hair pulling. :)
>>
>> Mike
>>
>>
>


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: non-existing local directory
Date: Tue, 21 Jan 2003 01:44:50 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1043113490 1300 171.64.15.101 (21 Jan 2003 01:44:50 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3864

Create the directory.  The user will appreciate it.

SteveJ

In article 
Honggo Wijaya  wrote:
>If the 4th argument passed by the user (directory at the local site to
>transfer into) doesn't exist, do we have to create the directory or simply
>treat this as a failure ?
>
>Please clarify on this.
>
>Thanks,
>Honggo
>
>
>


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: OK: XXX message
Date: Tue, 21 Jan 2003 01:48:18 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1043113698 1364 171.64.15.101 (21 Jan 2003 01:48:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3865

This should be the sum of all data bytes transferred,
data bytes being the contents of files.

SteveJ

In article 
Kevin Christopher   wrote:
>The specs say the output on successful completion should be "OK: xxxxxx 
>bytes copied" where xxxxx is the total of all bytes copied...
>
>Does the total mean bytes in files transfered, or all bytes transfered? 
>  (i.e. can we ignore LIST responses & control messages as part of the 
>total?)
>
>-Kevin
>


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: testing very large strings?
Date: Tue, 21 Jan 2003 01:51:29 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1043113889 1557 171.64.15.101 (21 Jan 2003 01:51:29 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3866

"Sufficiently large" buffers will be OK.  I suggest using descriptive
#defines for these sizes, and explanatory comments if necessary.

SteveJ

In article 
Kevin Christopher   wrote:
>Do we need to put in logic to handle extremely large inputs (i.e. a path 
>of 1000 characters, etc.)?  I've written code that copies into buffers 
>where I've used #define to get a large-enough maximum size, but 
>conceivably these could overflow and create messy errors.  (Obviously 
>this doesn't apply to file transfers; I'm referring to file paths, 
>extensions, etc.)
>
>Will the tests be deliberately trying to break code by overflowing 
>static buffers?  Or am I safe with sufficiently large buffer sizes (i.e. 
>256 byte max for the extension)?
>
>-Kevin
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: non-existing local directory
Date: Mon, 20 Jan 2003 18:09:00 -0800
Lines: 31
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043114941 2042 128.12.85.0 (21 Jan 2003 02:09:01 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3867

According to the assignment:
6. All files should be created with the permissions S_IREAD and S_IWRITE.
You may assume that the local directory already exists; exit with an error
if it does not.

Which is it?

"Steve Jacobson"  wrote in message

> Create the directory.  The user will appreciate it.
>
> SteveJ
>
> In article 
> Honggo Wijaya  wrote:
> >If the 4th argument passed by the user (directory at the local site to
> >transfer into) doesn't exist, do we have to create the directory or
simply
> >treat this as a failure ?
> >
> >Please clarify on this.
> >
> >Thanks,
> >Honggo
> >
> >
> >
>
>


.

Path: shelby.stanford.edu!saga21.Stanford.EDU!srini
From: Srinivas Panguluri 
Newsgroups: su.class.cs244a
Subject: Re: bind() issues
Date: Mon, 20 Jan 2003 18:20:13 -0800
Lines: 42
Distribution: su
Message-ID: 
References:  
  
NNTP-Posting-Host: saga21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043115616 2438 171.64.15.151 (21 Jan 2003 02:20:16 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3868



I figured out my problem - I was incorrectly using getsockname - using the
wrong value for the size of the address structure.  Darn silly mistake
cost me hours!

Thanks!
Srinivas




On Mon, 20 Jan 2003, Matthew Jonathan Holliman wrote:

>
> >if I do close(dataSock), I get errno = 9, Bad File Number (EBADF)  ? Maybe I
> >have to create a new socket?
>
> Yep--once you close() it, it's finished with.  You create a brand-new socket
> exactly as before, with socket() etc.
>
> >if I don't close(dataSock), I get errno = 22, Invalid Argument. (EINVAL) ?
> >Maybe you can't re-bind a socket?
>
> Correct (as far as I know).  You can close the socket, and repeat the
> whole procedure next time (socket, bind, etc.)
>
> >if I close the socket, and create a new one with the socket() command, bind
> >works, but it doesn't give me an ephemeral port (it just returns 0 as the
> >ephemeral port), which sucks.
>
> bind() itself won't tell you the port--it leaves the structure fields
> unchanged.  If bind() doesn't return an error, getsockname() should
> give you the local port number.
>
>

Srinivas Panguluri

(562) 716-5912
Have a nice day!

.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: FTP server reply 120
Date: Mon, 20 Jan 2003 19:43:25 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043120692 5071 128.12.196.91 (21 Jan 2003 03:44:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3869

Somebody has posted this question before.
However, since there is no answer yet, let me ask the question again.

What should ftpcopy do if the FTP server replies our connect command
with a code of 120 "Service ready in nnn minutes."
Should we :
- wait and wait until the server returns 220 ?
- or try to connect again ?
- or should we just treat it as an error message?

thanks,
Honggo



.

Path: shelby.stanford.edu!elaine0.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: purify issue: gethostbyname
Date: Mon, 20 Jan 2003 19:56:47 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine0.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043121408 5370 171.64.15.119 (21 Jan 2003 03:56:48 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3870

When the program exits, purify reports
file descriptor 6: "/etc/.name_service_door"
is in use.
The detailed descriptions of this msg shows gethostbyname's using it.
Is this correct, or do we need to do some cleanup things after calling
gethostbyname?

Eric


.

Path: shelby.stanford.edu!not-for-mail
From: Kirk Phelps 
Newsgroups: su.class.cs244a
Subject: Re: purify issue: gethostbyname
Date: Mon, 20 Jan 2003 20:09:26 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine27.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043122166 5665 171.64.15.102 (21 Jan 2003 04:09:26 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3871

The website mentions that you don't need to worry about this, but I'm
not a TA, so don't consider me to be representative of the grading
policy.
-Kirk

Eric Chenjian Xu wrote:
> 
> When the program exits, purify reports
> file descriptor 6: "/etc/.name_service_door"
> is in use.
> The detailed descriptions of this msg shows gethostbyname's using it.
> Is this correct, or do we need to do some cleanup things after calling
> gethostbyname?
> 
> Eric
.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: Re: timeout
Date: Mon, 20 Jan 2003 20:49:37 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043124578 6836 171.64.15.110 (21 Jan 2003 04:49:38 GMT)
X-Complaints-To: 
To: Jonathan D Herbach 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3872

I'm having the same problem. It seems my ftpcopy needs more than 3 mins.
I also found out my program was checking direcotries such as . and ..
(e.g. ../..).  Do we need to check these direcotories?

Eric

On Mon, 13 Jan 2003, Jonathan D Herbach wrote:

> while running on ./ftpcopy mif 5 ftp.slac.stanford.edu in directory /doc,
> my ftpcopy times out.
>
> It worked a day or two ago, but I haven't changed the code. Should I
> assume that this is a problem on my part (perhaps my code isn't efficient
> enough?) or not worry about such a transient error?
>
>  warning:  ftpcopy
> failed with exit code 16777215 (waitpid status -1) program output:
> ***Timeout expired during grading
> Program output:
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Aaron James Dailey 
Newsgroups: su.class.cs244a
Subject: purify question - 'access error'
Date: 20 Jan 2003 22:04:55 -0800
Organization: Stanford University, CA, USA
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine33.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Trace: news.Stanford.EDU 1043129096 8391 171.64.15.108 (21 Jan 2003 06:04:56 GMT)
X-Complaints-To: 
User-Agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Honest Recruiter)
Xref: shelby.stanford.edu su.class.cs244a:3873

In my purify output, I get this line:
  * 2 access errors, 22 total occurrences.

I'm really clear what this means, or how to go about fixing them, as
there's no stack trace. The only 'three letter' errors I see are the FIU
errors (stdin, stdout, stderr, /etc/name_service_door), which I assume are
ok (right?)

I can post the whole output if that would be useful.

Thanks

Aaron

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: Re: timeout
Date: Mon, 20 Jan 2003 22:16:58 -0800
Lines: 34
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043129819 9453 171.64.15.117 (21 Jan 2003 06:16:59 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3874

By skipping . and .., my program did successfully finish copying in
seconds.  Just want to make sure we should skip these directories.  Please
confirm.
Thanks,
Eric

On Mon, 20 Jan 2003, Eric Chenjian Xu wrote:

> I'm having the same problem. It seems my ftpcopy needs more than 3 mins.
> I also found out my program was checking direcotries such as . and ..
> (e.g. ../..).  Do we need to check these direcotories?
>
> Eric
>
> On Mon, 13 Jan 2003, Jonathan D Herbach wrote:
>
> > while running on ./ftpcopy mif 5 ftp.slac.stanford.edu in directory /doc,
> > my ftpcopy times out.
> >
> > It worked a day or two ago, but I haven't changed the code. Should I
> > assume that this is a problem on my part (perhaps my code isn't efficient
> > enough?) or not worry about such a transient error?
> >
> >  warning:  ftpcopy
> > failed with exit code 16777215 (waitpid status -1) program output:
> > ***Timeout expired during grading
> > Program output:
> >
> >
>
>
>


.

Path: shelby.stanford.edu!epic27.Stanford.EDU!tjruwase
From: Olatunji Oluwabukunmi Ruwase 
Newsgroups: su.class.cs244a
Subject: Re: reply code and freeing memory
Date: Mon, 20 Jan 2003 23:03:44 -0800
Lines: 41
Distribution: su
Message-ID: 
References: 
  
 
NNTP-Posting-Host: epic27.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043132629 10851 171.64.15.60 (21 Jan 2003 07:03:49 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3875


> You'd expect to receive 550 (this is certainly what the reference
> solution against which submissions are tested assumes, and what the RFC
> states as the expected behaviour), but if 553 is also being used by some
> servers you may treat both as having comparable meaning.  Having said this,
> I haven't seen 553 being used in this way though, only 550.
>
> In general, the only file system problem we're explicitly testing will be
> inaccessible directories; any other 55x that didn't correspond to such a
> case would be unexpected (i.e., not the focus of a test case).
>
 Could you please clarify this, since Test L.7 checks for correct handling
of non existent remote directory . My understanding of the requirements is
that this should be handled differently from an inaccessible remote
directory. That is a non existent remote directory should result in error
while an inaccessible remote directory should be ignored.
 Assuming i do not have the requirements confused, therefore it would
matter which code 553 or 550 is returned .
 Please clarify on this
 By the way below is the output from ftp.cs which does swap 550 and 553
 with respect to the RFC
 Thanks
tunji

epic27:/tmp/tunji> ftp ftp.cs
Connected to labrea.Stanford.EDU.
220 ftp.cs.stanford.edu NcFTPd Server (free educational license) ready.
Name (ftp.cs:tjruwase): anonymous
331 Guest login ok, send your complete e-mail address as password.
Password:
230-You are user #2 of 100 simultaneous users allowed.
230-
230 Logged in anonymously.
ftp> cd ../
553 Permission denied.
ftp> cd missing
550 No such directory.
ftp>



.

Path: shelby.stanford.edu!not-for-mail
From:  (Dale Neal)
Newsgroups: su.class.cs244a
Subject: CDUP?
Date: Tue, 21 Jan 2003 07:09:25 GMT
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: murasame.stanford.edu
X-Trace: news.Stanford.EDU 1043132965 11006 128.12.110.69 (21 Jan 2003 07:09:25 GMT)
X-Complaints-To: 
X-Newsreader: Forte Free Agent 1.21/32.243
Xref: shelby.stanford.edu su.class.cs244a:3876

Are we allowed to use CDUP? The FTP spec seems to suggest it to better
handle servers with different ways of specifying paths. Otherwise, can
we use PWD to keep track of the working directory? Or can we assume
that the '/' character is used on all servers to separate directories?

Thanks.

-Dale
.

Path: shelby.stanford.edu!talon1.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: Re: purify issue: gethostbyname
Date: Mon, 20 Jan 2003 23:21:49 -0800
Lines: 26
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: talon1.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043133711 11461 171.64.12.145 (21 Jan 2003 07:21:51 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3877

I had the same problem (check the previous posts) & the TA's said that we
don't have to worry about this error [the grading script skips it in the
purify.output file]


On Mon, 20 Jan 2003, Kirk Phelps wrote:

> The website mentions that you don't need to worry about this, but I'm
> not a TA, so don't consider me to be representative of the grading
> policy.
> -Kirk
>
> Eric Chenjian Xu wrote:
> >
> > When the program exits, purify reports
> > file descriptor 6: "/etc/.name_service_door"
> > is in use.
> > The detailed descriptions of this msg shows gethostbyname's using it.
> > Is this correct, or do we need to do some cleanup things after calling
> > gethostbyname?
> >
> > Eric
>



.

Path: shelby.stanford.edu!cardinal4.Stanford.EDU!tedu
From: Ted Unangst 
Newsgroups: su.class.cs244a
Subject: hostname format
Date: Tue, 21 Jan 2003 00:07:33 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: cardinal4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043136454 12865 171.64.15.252 (21 Jan 2003 08:07:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3878

What formats should we be expected to handle for the name of the server?
It seems the grading script for the zero sized file test is giving me an
unusual hostname of 

--
"If you take out the killings, Washington actually has a very very
low crime rate."
      - M. Barry, Mayor of Washington, DC

.

Path: shelby.stanford.edu!cardinal4.Stanford.EDU!tedu
From: Ted Unangst 
Newsgroups: su.class.cs244a
Subject: Re: hostname format
Date: Tue, 21 Jan 2003 00:09:19 -0800
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: cardinal4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043136559 13119 171.64.15.252 (21 Jan 2003 08:09:19 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3879

On Tue, 21 Jan 2003, Ted Unangst wrote:

> What formats should we be expected to handle for the name of the server?
> It seems the grading script for the zero sized file test is giving me an
> unusual hostname of 

forget that.  just read that it's covered by the assignment description.


--
"I read a funny story about how the Republicans freed the slaves.
The Republicans are the ones who created slavery by law in the
1600's.  Abraham Lincoln freed the slaves and he was not a
Republican."
      - M. Barry, Mayor of Washington, DC

.

Path: shelby.stanford.edu!epic26.Stanford.EDU!sansari
From: Saad Salman Ansari 
Newsgroups: su.class.cs244a
Subject: Re: timeout
Date: Tue, 21 Jan 2003 00:15:46 -0800
Lines: 50
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: epic26.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043136947 13640 171.64.15.50 (21 Jan 2003 08:15:47 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3880

I am having the same problem with the timeout. When I ran the same command
separately, i got the expected output:

../ftpcopy mif 5 ftp.slac.stanford.edu
/afs/ir.stanford.edu/users/s/a/sansari/courses/cs244a/assgn1/ftpcopy/testing/grading_src/build/ftp.slac.stanford.edu_mif_5_1
/doc
OK 926312 bytes copied

Is it possible to change the timeout value of the grading script? Perhaps,
due to increased load (in these last three days) it may need extra time.
Also I'm skipping over "." and ".."

On Mon, 20 Jan 2003, Eric Chenjian Xu wrote:

> By skipping . and .., my program did successfully finish copying in
> seconds.  Just want to make sure we should skip these directories.  Please
> confirm.
> Thanks,
> Eric
>
> On Mon, 20 Jan 2003, Eric Chenjian Xu wrote:
>
> > I'm having the same problem. It seems my ftpcopy needs more than 3 mins.
> > I also found out my program was checking direcotries such as . and ..
> > (e.g. ../..).  Do we need to check these direcotories?
> >
> > Eric
> >
> > On Mon, 13 Jan 2003, Jonathan D Herbach wrote:
> >
> > > while running on ./ftpcopy mif 5 ftp.slac.stanford.edu in directory /doc,
> > > my ftpcopy times out.
> > >
> > > It worked a day or two ago, but I haven't changed the code. Should I
> > > assume that this is a problem on my part (perhaps my code isn't efficient
> > > enough?) or not worry about such a transient error?
> > >
> > >  warning:  ftpcopy
> > > failed with exit code 16777215 (waitpid status -1) program output:
> > > ***Timeout expired during grading
> > > Program output:
> > >
> > >
> >
> >
> >
>
>
>

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: no .purify
Date: Tue, 21 Jan 2003 00:24:07 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043137448 13844 171.64.15.117 (21 Jan 2003 08:24:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3881

I don't have a .purify file, and my purify executable seems to run ok both
on my test cases and test case M in the script.  The web page says

"The error (UMR) happens inside of a network system call (bind, accept,
etc.)"

And, it seems like I have to submit a .purify file (at least for running
the test script).  Do I suppose to suppress the umr errors in the
functions that have bind, accept, etc?  If not, do I just submit an empty
..purify?

Eric



.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: CDUP?
Date: Tue, 21 Jan 2003 01:15:31 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1043140533 14868 128.12.185.34 (21 Jan 2003 09:15:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3882

From previous post:

>Can we assume CDUP always supported by the FTP server?

The RFC states this is "optional," so this is not a good assumption.


"Dale Neal"  wrote in message

> Are we allowed to use CDUP? The FTP spec seems to suggest it to better
> handle servers with different ways of specifying paths. Otherwise, can
> we use PWD to keep track of the working directory? Or can we assume
> that the '/' character is used on all servers to separate directories?
>
> Thanks.
>
> -Dale


.

Path: shelby.stanford.edu!not-for-mail
From:  (Dale Neal)
Newsgroups: su.class.cs244a
Subject: Re: CDUP?
Date: Tue, 21 Jan 2003 09:19:06 GMT
Lines: 22
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: murasame.stanford.edu
X-Trace: news.Stanford.EDU 1043140746 14910 128.12.110.69 (21 Jan 2003 09:19:06 GMT)
X-Complaints-To: 
X-Newsreader: Forte Free Agent 1.21/32.243
Xref: shelby.stanford.edu su.class.cs244a:3883


>>Can we assume CDUP always supported by the FTP server?
>
>The RFC states this is "optional," so this is not a good assumption.

I was afraid of that. Can I get an answer to the rest of my question?

>
>
>"Dale Neal"  wrote in message

>> Are we allowed to use CDUP? The FTP spec seems to suggest it to better
>> handle servers with different ways of specifying paths. Otherwise, can
>> we use PWD to keep track of the working directory? Or can we assume
>> that the '/' character is used on all servers to separate directories?
>>
>> Thanks.
>>
>> -Dale
>
>

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!keithito
From: Keith Isami Ito 
Newsgroups: su.class.cs244a
Subject: submitting
Date: Tue, 21 Jan 2003 02:06:16 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine31.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043143579 16919 171.64.15.106 (21 Jan 2003 10:06:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3884

Hi. I'm a moron and can't figure out how to use the submit script.
My TA is Steve Jacobson (who has the ID sjac3), so I'm supposed to type:

/usr/class/cs244a/bin/submit.pl hw1 sjac3

right? The script runs and tells me:

I have no information about TA sjac3

What am I doing wrong?

-- Keith



.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: submitting
Date: Tue, 21 Jan 2003 11:42:46 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1043149366 18824 171.64.15.100 (21 Jan 2003 11:42:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3885

Keith Isami Ito  writes:

>Hi. I'm a moron and can't figure out how to use the submit script.
>My TA is Steve Jacobson (who has the ID sjac3), so I'm supposed to type:

No, I'm the moron; I forgot to add Steve into the submission configuration
when he joined us after the quarter's start.  If you try this again,
it should hopefully work now.

.

Path: shelby.stanford.edu!not-for-mail
From: wmagrath 
Newsgroups: su.class.cs244a
Subject: File Extension Case Sensitive??
Date: Tue, 21 Jan 2003 03:55:47 -0800
Lines: 11
Distribution: su
Message-ID: 
Reply-To:  
NNTP-Posting-Host: dn800cb906.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043150174 19025 128.12.185.6 (21 Jan 2003 11:56:14 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3886

At the risk of beating a dead horse, is the file extension parameter 
case sensitive?  In other words, if we're looking for ".txt" and we find 
a file of type ".TXT", do we transfer it?  (I assume no but just want to 
make sure).

And to really beat a dead horse, if we find a file whose full name is 
just ".txt" (no prefix), should we copy it?

Thanks for the help!


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: File Extension Case Sensitive??
Date: Tue, 21 Jan 2003 17:51:45 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1043171505 28092 171.64.15.112 (21 Jan 2003 17:51:45 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3887

Assume case sensitive (like Unix).

SteveJ

In article 
wmagrath   wrote:
>At the risk of beating a dead horse, is the file extension parameter 
>case sensitive?  In other words, if we're looking for ".txt" and we find 
>a file of type ".TXT", do we transfer it?  (I assume no but just want to 
>make sure).
>
>And to really beat a dead horse, if we find a file whose full name is 
>just ".txt" (no prefix), should we copy it?
>
>Thanks for the help!
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: non-existing local directory
Date: Tue, 21 Jan 2003 17:54:06 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 41
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1043171646 28155 171.64.15.112 (21 Jan 2003 17:54:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3888

In article 
Rene Patnode  wrote:
>According to the assignment:
>6. All files should be created with the permissions S_IREAD and S_IWRITE.

I stand corrected.  The assignment specifies acceptable
behavior if the local directory does not exist.

SteveJ

>You may assume that the local directory already exists; exit with an error
>if it does not.
>
>Which is it?
>
>"Steve Jacobson"  wrote in message

>> Create the directory.  The user will appreciate it.
>>
>> SteveJ
>>
>> In article 
>> Honggo Wijaya  wrote:
>> >If the 4th argument passed by the user (directory at the local site to
>> >transfer into) doesn't exist, do we have to create the directory or
>simply
>> >treat this as a failure ?
>> >
>> >Please clarify on this.
>> >
>> >Thanks,
>> >Honggo
>> >
>> >
>> >
>>
>>
>
>


.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: HW2 object code
Date: Tue, 21 Jan 2003 11:04:50 -0800
Lines: 15
Distribution: su
Message-ID: 
References:  
  
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043175896 794 171.64.15.82 (21 Jan 2003 19:04:56 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3889

Hi,
I was wondering if you could provide either the support libraries for
assignment 2 in binary code for Linux or the source code to
generate them. I'm an SITN student and it is more convenient for me
to work in my system than to always work in the leland cluster.
I understand that if I encounter any problem with them you will not
support them and that the final code will have to run on the
elaines so I will make sure that that is the case, but this will
make working on the assignment a lot easier for me, and maybe
other people in my situation.

Thanks,

Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: CDUP?
Date: Tue, 21 Jan 2003 11:14:56 -0800
Lines: 28
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043176496 1099 128.12.85.0 (21 Jan 2003 19:14:56 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3890

In lieu of using "CDUP", "CWD .." has always seemed to work. TAs?

"Dale Neal"  wrote in message

>
> >>Can we assume CDUP always supported by the FTP server?
> >
> >The RFC states this is "optional," so this is not a good assumption.
>
> I was afraid of that. Can I get an answer to the rest of my question?
>
> >
> >
> >"Dale Neal"  wrote in message
> 
> >> Are we allowed to use CDUP? The FTP spec seems to suggest it to better
> >> handle servers with different ways of specifying paths. Otherwise, can
> >> we use PWD to keep track of the working directory? Or can we assume
> >> that the '/' character is used on all servers to separate directories?
> >>
> >> Thanks.
> >>
> >> -Dale
> >
> >
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: HW2 object code
Date: Tue, 21 Jan 2003 11:17:47 -0800
Lines: 21
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043176668 1152 128.12.85.0 (21 Jan 2003 19:17:48 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3891

You could try using VNC. Does it not work remotely?

"Rafael M Hernandez"  wrote in message

> Hi,
> I was wondering if you could provide either the support libraries for
> assignment 2 in binary code for Linux or the source code to
> generate them. I'm an SITN student and it is more convenient for me
> to work in my system than to always work in the leland cluster.
> I understand that if I encounter any problem with them you will not
> support them and that the final code will have to run on the
> elaines so I will make sure that that is the case, but this will
> make working on the assignment a lot easier for me, and maybe
> other people in my situation.
>
> Thanks,
>
> Rafa
>


.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: HW2 object code
Date: Tue, 21 Jan 2003 12:49:12 -0800
Lines: 27
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043182148 4430 171.64.74.37 (21 Jan 2003 20:49:08 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3892

Rafael,

remind me once the assignment is out and we can see if it runs on Linux. 
My guess is no, but who knows. If not, how fast is your network 
connection? You can run xterms remotely on the cluster machines
and ssh tunnel them on your local host. If your pipe is fast enough
(and latency is not too bad) it works great.

   Guido

Rafael M Hernandez wrote:
> Hi,
> I was wondering if you could provide either the support libraries for
> assignment 2 in binary code for Linux or the source code to
> generate them. I'm an SITN student and it is more convenient for me
> to work in my system than to always work in the leland cluster.
> I understand that if I encounter any problem with them you will not
> support them and that the final code will have to run on the
> elaines so I will make sure that that is the case, but this will
> make working on the assignment a lot easier for me, and maybe
> other people in my situation.
> 
> Thanks,
> 
> Rafa
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: purify question - 'access error'
Date: Tue, 21 Jan 2003 12:57:56 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043182671 4957 171.64.74.37 (21 Jan 2003 20:57:51 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3893

Please post. I am nor exactly the purify guru on the TA team but usually 
any access error result in three letter errors.

Aaron James Dailey wrote:
> In my purify output, I get this line:
>   * 2 access errors, 22 total occurrences.
> 
> I'm really clear what this means, or how to go about fixing them, as
> there's no stack trace. The only 'three letter' errors I see are the FIU
> errors (stdin, stdout, stderr, /etc/name_service_door), which I assume are
> ok (right?)
> 
> I can post the whole output if that would be useful.
> 
> Thanks
> 
> Aaron
> 

.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: HW2 object code
Date: Tue, 21 Jan 2003 13:04:59 -0800
Lines: 50
Distribution: su
Message-ID: 
References:  
  
 
 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043183101 5252 171.64.15.82 (21 Jan 2003 21:05:01 GMT)
X-Complaints-To: 
To: Guido Appenzeller 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3894

Hi Guido,
as far as I can tell the assignment is out already. I thought that
professor McKeown said all assignments are out and that we can start
anytime.

Regarding my connection, I can ssh from work and it works well but
in general I'd rather not use company resources for this and I'd
prefer to work from home, in particular when I need to work during
the night.

The reason I suggested Linux is that by executing
the gethw2 script that you provide it also installed a Makefile.linux
besides the regular Makefile.

Thanks
Rafa



On Tue, 21 Jan 2003, Guido Appenzeller wrote:

> Rafael,
>
> remind me once the assignment is out and we can see if it runs on Linux.
> My guess is no, but who knows. If not, how fast is your network
> connection? You can run xterms remotely on the cluster machines
> and ssh tunnel them on your local host. If your pipe is fast enough
> (and latency is not too bad) it works great.
>
>    Guido
>
> Rafael M Hernandez wrote:
> > Hi,
> > I was wondering if you could provide either the support libraries for
> > assignment 2 in binary code for Linux or the source code to
> > generate them. I'm an SITN student and it is more convenient for me
> > to work in my system than to always work in the leland cluster.
> > I understand that if I encounter any problem with them you will not
> > support them and that the final code will have to run on the
> > elaines so I will make sure that that is the case, but this will
> > make working on the assignment a lot easier for me, and maybe
> > other people in my situation.
> >
> > Thanks,
> >
> > Rafa
> >
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: CDUP?
Date: Tue, 21 Jan 2003 13:08:26 -0800
Lines: 36
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043183301 5342 171.64.74.37 (21 Jan 2003 21:08:21 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3895

CWD is required per RFC. I've never seen a ftp server that did not 
understand "/", ".." and ".". I'd guess they exist (VMS? TSO?), but 
unless Matthew protests I guess you can assume "/" here.

   Guido

Rene Patnode wrote:
> In lieu of using "CDUP", "CWD .." has always seemed to work. TAs?
> 
> "Dale Neal"  wrote in message
> 
> 
>>>>Can we assume CDUP always supported by the FTP server?
>>>
>>>The RFC states this is "optional," so this is not a good assumption.
>>
>>I was afraid of that. Can I get an answer to the rest of my question?
>>
>>
>>>
>>>"Dale Neal"  wrote in message

>>>
>>>>Are we allowed to use CDUP? The FTP spec seems to suggest it to better
>>>>handle servers with different ways of specifying paths. Otherwise, can
>>>>we use PWD to keep track of the working directory? Or can we assume
>>>>that the '/' character is used on all servers to separate directories?
>>>>
>>>>Thanks.
>>>>
>>>>-Dale
>>>
>>>
> 
> 

.

Path: shelby.stanford.edu!saga20.Stanford.EDU!myc
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: Re: reply code and freeing memory
Date: Tue, 21 Jan 2003 13:19:43 -0800
Lines: 58
Distribution: su
Message-ID: 
References: 
  
  
NNTP-Posting-Host: saga20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043183986 5798 171.64.15.150 (21 Jan 2003 21:19:46 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3896


The following was the reply from TA in previous post:


>2. If user defined srcDir on server is there, but permission denied,
>should the program exit as FAILURE or SUCCESS(permission problem
>tolerated)?

You should treat this the same as a non-existent remote directory.




On Mon, 20 Jan 2003, Olatunji Oluwabukunmi Ruwase wrote:

>
> > You'd expect to receive 550 (this is certainly what the reference
> > solution against which submissions are tested assumes, and what the RFC
> > states as the expected behaviour), but if 553 is also being used by some
> > servers you may treat both as having comparable meaning.  Having said this,
> > I haven't seen 553 being used in this way though, only 550.
> >
> > In general, the only file system problem we're explicitly testing will be
> > inaccessible directories; any other 55x that didn't correspond to such a
> > case would be unexpected (i.e., not the focus of a test case).
> >
>  Could you please clarify this, since Test L.7 checks for correct handling
> of non existent remote directory . My understanding of the requirements is
> that this should be handled differently from an inaccessible remote
> directory. That is a non existent remote directory should result in error
> while an inaccessible remote directory should be ignored.
>  Assuming i do not have the requirements confused, therefore it would
> matter which code 553 or 550 is returned .
>  Please clarify on this
>  By the way below is the output from ftp.cs which does swap 550 and 553
>  with respect to the RFC
>  Thanks
> tunji
>
> epic27:/tmp/tunji> ftp ftp.cs
> Connected to labrea.Stanford.EDU.
> 220 ftp.cs.stanford.edu NcFTPd Server (free educational license) ready.
> Name (ftp.cs:tjruwase): anonymous
> 331 Guest login ok, send your complete e-mail address as password.
> Password:
> 230-You are user #2 of 100 simultaneous users allowed.
> 230-
> 230 Logged in anonymously.
> ftp> cd ../
> 553 Permission denied.
> ftp> cd missing
> 550 No such directory.
> ftp>
>
>
>
>

.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: FTP server reply 120
Date: Tue, 21 Jan 2003 21:37:26 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1043185046 6541 171.64.15.77 (21 Jan 2003 21:37:26 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3897

You can ignore the possibility of a 120 reply (or treat
it as an error).  This will not be a grading test case.

SteveJ

In article 
Honggo Wijaya  wrote:
>Somebody has posted this question before.
>However, since there is no answer yet, let me ask the question again.
>
>What should ftpcopy do if the FTP server replies our connect command
>with a code of 120 "Service ready in nnn minutes."
>Should we :
>- wait and wait until the server returns 220 ?
>- or try to connect again ?
>- or should we just treat it as an error message?
>
>thanks,
>Honggo
>
>
>


.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: purify question - 'access error'
Date: Tue, 21 Jan 2003 21:44:53 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1043185493 6772 171.64.15.77 (21 Jan 2003 21:44:53 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3898

I'm aware of a single FIU error which can be ignored.

It would be helpful to see the other error messages.

SteveJ

In article 
Aaron James Dailey   wrote:
>In my purify output, I get this line:
>  * 2 access errors, 22 total occurrences.
>
>I'm really clear what this means, or how to go about fixing them, as
>there's no stack trace. The only 'three letter' errors I see are the FIU
>errors (stdin, stdout, stderr, /etc/name_service_door), which I assume are
>ok (right?)
>
>I can post the whole output if that would be useful.
>
>Thanks
>
>Aaron
>


.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: timeout
Date: Tue, 21 Jan 2003 21:46:19 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 32
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1043185579 6888 171.64.15.77 (21 Jan 2003 21:46:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3899

You should ignore "." (representing this directory) and
".." (representing the next higher directory).

SteveJ

In article 
Eric Chenjian Xu   wrote:
>I'm having the same problem. It seems my ftpcopy needs more than 3 mins.
>I also found out my program was checking direcotries such as . and ..
>(e.g. ../..).  Do we need to check these direcotories?
>
>Eric
>
>On Mon, 13 Jan 2003, Jonathan D Herbach wrote:
>
>> while running on ./ftpcopy mif 5 ftp.slac.stanford.edu in directory /doc,
>> my ftpcopy times out.
>>
>> It worked a day or two ago, but I haven't changed the code. Should I
>> assume that this is a problem on my part (perhaps my code isn't efficient
>> enough?) or not worry about such a transient error?
>>
>>  warning:  ftpcopy
>> failed with exit code 16777215 (waitpid status -1) program output:
>> ***Timeout expired during grading
>> Program output:
>>
>>
>
>


.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: no .purify
Date: Tue, 21 Jan 2003 21:50:26 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 28
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1043185826 7023 171.64.15.77 (21 Jan 2003 21:50:26 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3900

Suppressing purify error messages is not a good idea.

A purify report should be generated even if there are no
purify errors.  Most likely, you have the output going to
the screen instead of to a file.  See the purify FAQ for
how to redirect the output.

SteveJ

In article 
Eric Chenjian Xu   wrote:
>I don't have a .purify file, and my purify executable seems to run ok both
>on my test cases and test case M in the script.  The web page says
>
>"The error (UMR) happens inside of a network system call (bind, accept,
>etc.)"
>
>And, it seems like I have to submit a .purify file (at least for running
>the test script).  Do I suppose to suppress the umr errors in the
>functions that have bind, accept, etc?  If not, do I just submit an empty
>.purify?
>
>Eric
>
>
>


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: timeout
Date: Tue, 21 Jan 2003 21:50:35 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1043185835 7029 171.64.15.115 (21 Jan 2003 21:50:35 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3901


>Is it possible to change the timeout value of the grading script? Perhaps,
>due to increased load (in these last three days) it may need extra time.
>Also I'm skipping over "." and ".."

It's possible, but I think the current timeout interval of three minutes
should be more than enough time for your client to complete.  How long
does it take when you run from the shell?

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: HW2 object code
Date: Tue, 21 Jan 2003 22:08:53 +0000 (UTC)
Lines: 28
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1043186933 7626 171.64.15.115 (21 Jan 2003 22:08:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3902


>I was wondering if you could provide either the support libraries for
>assignment 2 in binary code for Linux or the source code to
>generate them. I'm an SITN student and it is more convenient for me
>to work in my system than to always work in the leland cluster.
>I understand that if I encounter any problem with them you will not
>support them and that the final code will have to run on the
>elaines so I will make sure that that is the case, but this will
>make working on the assignment a lot easier for me, and maybe
>other people in my situation.

I haven't tried this under Linux, but the sources you need for initial
development are all retrieved by the gethw2 script.  If you have problems,
please let us know--although Linux will be officially unsupported :-)

There are a couple of things of which to be aware:

(1) There are differences between the Solaris Makefile and the Makefile.linux.
    We use the former for the test script and grading; the latter can only
    be used if you do any initial development under Linux.  So be sure to use
    the correct Makefile for your final submission.  (This really only
    affects part (c) of the assignment).

(2) Needless to say, the testing scripts run only on the leland systems
    (elaines etc).  I think people will find these are more useful on the
    second assignment than they were on the first, since testing is
    more difficult than was the case for ftpcopy.

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: no .purify
Date: Tue, 21 Jan 2003 22:16:22 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1043187382 7925 171.64.15.115 (21 Jan 2003 22:16:22 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3903


>And, it seems like I have to submit a .purify file (at least for running
>the test script).  Do I suppose to suppress the umr errors in the
>functions that have bind, accept, etc?  If not, do I just submit an empty
>.purify?

If you don't see errors in the system calls, you don't need to suppress
them, and can just submit an empty .purify file instead.  You can generate
this just by doing 'touch .purify'.

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!gcs
From: Giri Sreenivas 
Newsgroups: su.class.cs244a
Subject: path separator
Date: Tue, 21 Jan 2003 14:43:58 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043189040 8803 171.64.15.87 (21 Jan 2003 22:44:00 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3904

Can we assume that '/' will always separate directories? I think I
remember some old ftpd's for win9x that had '\' as a path separator,
directly mapping the os fs to the ftp fs. Thanks,

Giri

.

Path: shelby.stanford.edu!not-for-mail
From: Aaron James Dailey 
Newsgroups: su.class.cs244a
Subject: Re: purify question - 'access error'
Date: 21 Jan 2003 19:19:41 -0800
Organization: Stanford University, CA, USA
Lines: 22
Sender: 
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine14.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Trace: news.Stanford.EDU 1043205582 18293 171.64.15.79 (22 Jan 2003 03:19:42 GMT)
X-Complaints-To: 
User-Agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Honest Recruiter)
Xref: shelby.stanford.edu su.class.cs244a:3905

I looked at my output again, and it did tell me exactly where I was
accessing uninitialized memory.  What a great tool!

I have the following FIUs, which I'm thinking are ok.  Is this right?

FIU: file descriptor 0: <stdin>
FIU: file descriptor 1: <stdout>
FIU: file descriptor 2: <stderr>
FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
   * File info: ?r--r--r--  1 root     root             0 May 10  2002
   * This file descriptor was allocated from:
 __open64       [libc.so.1]
      _open64        [libc.so.1]
      _nsc_trydoorcall [libc.so.1]
    _door_gethostbyname_r [gethostby_door.c]
        _get_hostserv_inetnetdir_byname [netdir_inet.c]
 gethostbyname_r [gethostbyname_r.c]
FIU: file descriptor 26: <reserved for Purify internal use>
FIU: file descriptor 27: <reserved for Purify internal use>


Aaron Dailey
.

Path: shelby.stanford.edu!saga5.Stanford.EDU!aseems
From: Aseem Sharma 
Newsgroups: su.class.cs244a
Subject: Can't run test script
Date: Tue, 21 Jan 2003 21:07:02 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043212030 22039 171.64.15.135 (22 Jan 2003 05:07:10 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3906

Hi Guys,

For some reason, I cannot run the test script. I'm an SCPD student
and the error I get is

Test record directory /afs/ir/class/cs244a/grading_script/student/aseems
does not exist!
couldn't submit code for testing

clues ??

Aseem

.

Path: shelby.stanford.edu!epic23.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: Dealing with LIST
Date: Tue, 21 Jan 2003 23:56:04 -0800
Lines: 22
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic23.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043222166 865 171.64.15.58 (22 Jan 2003 07:56:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3907

I am connecting to ftp.cdrom.com, using the following arguments to
ftpcopy:

ftpcopy.purify txt 2 ftp.cdrom.com boo

When I get to the /pub directory, and LIST, I get such directories as:

drwxr-x---   2 ftpuser  ftpusers      8192 Jan 11 17:34 symantec
drwxr-x---   2 ftpuser  ftpusers       512 Nov  5 14:37 pinnaclesys

etc.....

When I try to run LIST on them, i get this over the control connection:
150 Opening ASCII mode data connection for /bin/ls.

AND this over the data connection:
../pub/symantec/: Permission denied

Was there a way to tell that permission was denied in the first place?
Has anyone else attempted this site?  Thanks for any help/info.


.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Re: Dealing with LIST
Date: Wed, 22 Jan 2003 00:13:35 -0800
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043223216 2094 128.12.196.91 (22 Jan 2003 08:13:36 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3908

If there is permission denied when you want to access a certain directory,
you wil get a reply code of "550" or "553".
Thus, you can check this reply code to decide what to do.

Hope this helps.

Honggo


"Toliver Jue"  wrote in message

> I am connecting to ftp.cdrom.com, using the following arguments to
> ftpcopy:
>
> ftpcopy.purify txt 2 ftp.cdrom.com boo
>
> When I get to the /pub directory, and LIST, I get such directories as:
>
> drwxr-x---   2 ftpuser  ftpusers      8192 Jan 11 17:34 symantec
> drwxr-x---   2 ftpuser  ftpusers       512 Nov  5 14:37 pinnaclesys
>
> etc.....
>
> When I try to run LIST on them, i get this over the control connection:
> 150 Opening ASCII mode data connection for /bin/ls.
>
> AND this over the data connection:
> ./pub/symantec/: Permission denied
>
> Was there a way to tell that permission was denied in the first place?
> Has anyone else attempted this site?  Thanks for any help/info.
>
>


.

Path: shelby.stanford.edu!elaine14.Stanford.EDU!tedu
From: Ted Unangst 
Newsgroups: su.class.cs244a
Subject: Re: Dealing with LIST
Date: Wed, 22 Jan 2003 00:19:12 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine14.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043223552 2237 171.64.15.79 (22 Jan 2003 08:19:12 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3909

On Tue, 21 Jan 2003, Toliver Jue wrote:

> When I get to the /pub directory, and LIST, I get such directories as:
>
> drwxr-x---   2 ftpuser  ftpusers      8192 Jan 11 17:34 symantec
> drwxr-x---   2 ftpuser  ftpusers       512 Nov  5 14:37 pinnaclesys
>
> When I try to run LIST on them, i get this over the control connection:
> 150 Opening ASCII mode data connection for /bin/ls.
>
> AND this over the data connection:
> ./pub/symantec/: Permission denied
>
> Was there a way to tell that permission was denied in the first place?
> Has anyone else attempted this site?  Thanks for any help/info.

you could try parsing the permission info in the first listing.  look for
the string "---", but it's not foolproof.  If you try a CWD before LIST,
it will responsd with an error code, too.



--
"People blame me because these water mains break, but I ask you,
if the water mains didn't break, would it be my responsibility to
fix them then? WOULD IT!?!"
      - M. Barry, Mayor of Washington, DC

.

Path: shelby.stanford.edu!not-for-mail
From: "Garry Tan" 
Newsgroups: su.class.cs244a
Subject: test script ftpd not working?
Date: Wed, 22 Jan 2003 00:21:32 -0800
Lines: 26
Distribution: su
Message-ID: 
NNTP-Posting-Host: goggles.stanford.edu
X-Trace: news.Stanford.EDU 1043223693 2341 128.12.71.65 (22 Jan 2003 08:21:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3910

This is really strange... it was working earlier, but now running the test
script:

/afs/ir/class/cs244a/bin/test_code.pl hw1 *.c *.h Makefile purify.output
..purify

seems to die at


Working dir:
/afs/ir.stanford.edu/users/g/a/garry/cs244a/hw1/src/grading_src/build
Starting local ftpd: cd /usr/class/cs244a/grading_script/hw1_special_cases;
/usr/class/cs244a/WWW/homeworks/hw1/ftpd_src/wu-ftpd-2.0/bin/ftpd 2>
/afs/ir.stanford.edu/users/g/a/garry/cs244a/hw1/src/grading_src/build/.ftpd_
port&
ftpd running on port 65457
Testing special case:  ../ftpcopy ext 1 

It just hangs at this point. Is anyone else encountering this issue? I try
to ftp to elaine20.stanford.edu (the computer i was logged into) at port
65457 using another ftp client, and the server doesn't seem to be
responding, it just hangs (connects but doesn't reply)...




.

Path: shelby.stanford.edu!epic23.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: Re: Dealing with LIST
Date: Wed, 22 Jan 2003 00:22:39 -0800
Lines: 37
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: epic23.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043223761 2359 171.64.15.58 (22 Jan 2003 08:22:41 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3911

In my implementation, I never use the CWD, since I don't think it is
required.  Rather, I always put the full path name as the argument to
LIST.  Any other thoughts?


On Wed, 22 Jan 2003, Ted Unangst wrote:

> On Tue, 21 Jan 2003, Toliver Jue wrote:
>
> > When I get to the /pub directory, and LIST, I get such directories as:
> >
> > drwxr-x---   2 ftpuser  ftpusers      8192 Jan 11 17:34 symantec
> > drwxr-x---   2 ftpuser  ftpusers       512 Nov  5 14:37 pinnaclesys
> >
> > When I try to run LIST on them, i get this over the control connection:
> > 150 Opening ASCII mode data connection for /bin/ls.
> >
> > AND this over the data connection:
> > ./pub/symantec/: Permission denied
> >
> > Was there a way to tell that permission was denied in the first place?
> > Has anyone else attempted this site?  Thanks for any help/info.
>
> you could try parsing the permission info in the first listing.  look for
> the string "---", but it's not foolproof.  If you try a CWD before LIST,
> it will responsd with an error code, too.
>
>
>
> --
> "People blame me because these water mains break, but I ask you,
> if the water mains didn't break, would it be my responsibility to
> fix them then? WOULD IT!?!"
>       - M. Barry, Mayor of Washington, DC
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: submit script failing (no space left on device)
Date: Wed, 22 Jan 2003 00:26:17 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1043223975 2443 128.12.91.22 (22 Jan 2003 08:26:15 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:3912

I'm trying to submit my hw1, but the script is failing.  Looks like the
submission directory may be over quota?  Here's the message I'm getting:

elaine14:~/cs244a/hw1> /usr/class/cs244a/bin/submit.pl hw1 rdg12
SubmitBase: /afs/ir/class/cs244a/submissions
Debug Level = 0
mkdir /afs/ir/class/cs244a/submissions/grading/hw1/rdg12/wsr23
mkdir /afs/ir/class/cs244a/submissions/grading/hw1/rdg12/wsr23: 
   No space left on device at /usr/class/cs244a/bin/submit.pl line 133
elaine14:~/cs244a/hw1>

Please let me know ASAP if anyone else has seen this sort of thing...

Will Robinson
.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Re: Dealing with LIST
Date: Wed, 22 Jan 2003 00:55:28 -0800
Lines: 35
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043225729 18991 128.12.196.91 (22 Jan 2003 08:55:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3913

However, not all of the servers display the permission info when you do the
LIST. So, you can't really parse the permission for every server.

"Ted Unangst"  wrote in message

> On Tue, 21 Jan 2003, Toliver Jue wrote:
>
> > When I get to the /pub directory, and LIST, I get such directories as:
> >
> > drwxr-x---   2 ftpuser  ftpusers      8192 Jan 11 17:34 symantec
> > drwxr-x---   2 ftpuser  ftpusers       512 Nov  5 14:37 pinnaclesys
> >
> > When I try to run LIST on them, i get this over the control connection:
> > 150 Opening ASCII mode data connection for /bin/ls.
> >
> > AND this over the data connection:
> > ./pub/symantec/: Permission denied
> >
> > Was there a way to tell that permission was denied in the first place?
> > Has anyone else attempted this site?  Thanks for any help/info.
>
> you could try parsing the permission info in the first listing.  look for
> the string "---", but it's not foolproof.  If you try a CWD before LIST,
> it will responsd with an error code, too.
>
>
>
> --
> "People blame me because these water mains break, but I ask you,
> if the water mains didn't break, would it be my responsibility to
> fix them then? WOULD IT!?!"
>       - M. Barry, Mayor of Washington, DC
>


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: submit script failing (no space left on device)
Date: Wed, 22 Jan 2003 08:55:48 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043225748 18995 171.64.15.106 (22 Jan 2003 08:55:48 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3914


>I'm trying to submit my hw1, but the script is failing.  Looks like the
>submission directory may be over quota?  Here's the message I'm getting:

I've contacted the leland folks to see if they can fix things ASAP.

.

Path: shelby.stanford.edu!not-for-mail
From: Kirk Phelps 
Newsgroups: su.class.cs244a
Subject: ftp.fedworld.gov non-compliant??
Date: Wed, 22 Jan 2003 00:56:33 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine19.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043225793 19021 171.64.15.84 (22 Jan 2003 08:56:33 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3915

Hi-
Has anyone else noticed that ftp.fedworld.gov returns a 1036 byte
greeting, which I think is illegal under the spec, since "no NVT string
will be longer than 1024 bytes".  This is an easy #define fix, but I was
wondering if I am interpreting the problem assignment correctly...
Thanks.
-Kirk
.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: purify question - 'access error'
Date: Wed, 22 Jan 2003 08:56:49 +0000 (UTC)
Lines: 20
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043225809 19030 171.64.15.106 (22 Jan 2003 08:56:49 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3916


>I have the following FIUs, which I'm thinking are ok.  Is this right?

Yeah, those are fine (and all are ignored by the testing script).

>FIU: file descriptor 0: <stdin>
>FIU: file descriptor 1: <stdout>
>FIU: file descriptor 2: <stderr>
>FIU: file descriptor 3: "/etc/.name_service_door", O_RDONLY
>   * File info: ?r--r--r--  1 root     root             0 May 10  2002
>   * This file descriptor was allocated from:
> __open64       [libc.so.1]
>      _open64        [libc.so.1]
>      _nsc_trydoorcall [libc.so.1]
>    _door_gethostbyname_r [gethostby_door.c]
>        _get_hostserv_inetnetdir_byname [netdir_inet.c]
> gethostbyname_r [gethostbyname_r.c]
>FIU: file descriptor 26: <reserved for Purify internal use>
>FIU: file descriptor 27: <reserved for Purify internal use>

.

Path: shelby.stanford.edu!not-for-mail
From: "Garry Tan" 
Newsgroups: su.class.cs244a
Subject: Re: test script ftpd not working?
Date: Wed, 22 Jan 2003 00:57:14 -0800
Lines: 41
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: goggles.stanford.edu
X-Trace: news.Stanford.EDU 1043225834 19042 128.12.71.65 (22 Jan 2003 08:57:14 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3917

THIS REALLY SUCKS. The test script refuses to proceed past this point.

I am certain that it SHOULD work, simply because I can perform this step
manually without having anything hang or crash.

I can run:
cd /usr/class/cs244a/grading_script/hw1_special_cases
/usr/class/cs244a/WWW/homeworks/hw1/ftpd_src/wu-ftpd-2.0/bin/ftpd

and then
ftpcopy ext 1 

and have it run without a hitch, perfectly as desired. Files are properly
downloaded and nothing hangs.

Anyone running into this problem? It sucks because if the test script fails,
I know it would make it a nightmare to grade. Does anyone have any ideas
about what I could do? I only have 1 test script submit left today (its due
today at 5pm)...


> /afs/ir.stanford.edu/users/g/a/garry/cs244a/hw1/src/grading_src/build
> Starting local ftpd: cd
/usr/class/cs244a/grading_script/hw1_special_cases;
> /usr/class/cs244a/WWW/homeworks/hw1/ftpd_src/wu-ftpd-2.0/bin/ftpd 2>
>
/afs/ir.stanford.edu/users/g/a/garry/cs244a/hw1/src/grading_src/build/.ftpd_
> port&
> ftpd running on port 65457
> Testing special case:  ../ftpcopy ext 1 
>
> It just hangs at this point. Is anyone else encountering this issue? I try
> to ftp to elaine20.stanford.edu (the computer i was logged into) at port
> 65457 using another ftp client, and the server doesn't seem to be
> responding, it just hangs (connects but doesn't reply)...
>
>
>
>


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Can't run test script
Date: Wed, 22 Jan 2003 08:58:37 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043225917 19081 171.64.15.106 (22 Jan 2003 08:58:37 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3918



>For some reason, I cannot run the test script. I'm an SCPD student
>and the error I get is

>Test record directory /afs/ir/class/cs244a/grading_script/student/aseems
>does not exist!
>couldn't submit code for testing

Your case should be fixed.  For anyone else encountering this problem,
the directories are created by syncing (manually) every so often with the
results of the TA assignments.  So if you haven't assigned yourself a TA,
or have only got around to this very recently, chances are that this
directory wouldn't have been created yet.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Dealing with LIST
Date: Wed, 22 Jan 2003 09:02:33 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043226153 19208 171.64.15.106 (22 Jan 2003 09:02:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3919


>In my implementation, I never use the CWD, since I don't think it is
>required.  Rather, I always put the full path name as the argument to
>LIST.  Any other thoughts?

CWD would be the normal (and probably authoritative) way to do what you
want.

I wonder if the rwx--- are meaningful if you're ftping to something running
AFS; I guess it's conceivable you could run into ACLs rather than than
Unix style permission bits, in which case CWD would probably be the more
portable way of finding out ahead of time whether you had permission to
retrieve the directory listing.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script ftpd not working?
Date: Wed, 22 Jan 2003 09:05:25 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043226325 19266 171.64.15.106 (22 Jan 2003 09:05:26 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3920


Can you let me know where your code is so I can take a look at it?
(I'm not sure if I'll have a chance to get to it before the submission
deadline, but it would at least be helpful for the future).

I don't have a clue why it would fail in the script and not at the
command line; my (admittedly biased) experience has been that the scripts
are pretty reliable.

.

Path: shelby.stanford.edu!elaine10.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: 553 reply from ftp.cs.stanford.edu
Date: Wed, 22 Jan 2003 01:06:16 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine10.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043226378 19285 171.64.15.75 (22 Jan 2003 09:06:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3921

Hi,

I remember TA asks us to report any instance of 553 reply code, so I
post one here. It is from ftp.cs.stanford.edu, for file permission denied.
(I guess ftp.cs.stanford.edu just use 553 instead of 550)

One example is when try to RETR pub/sec/john-1.5.tar.gz, of which third
party doesn't have permission, 553 is returned.

For now I just add 553-checking anywhere I have to check for 550, but I am
not sure this will not introduce any conflicts in the grading tests.

Mingying


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: ftp.fedworld.gov non-compliant??
Date: Wed, 22 Jan 2003 09:07:46 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043226466 19311 171.64.15.106 (22 Jan 2003 09:07:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3922


>Has anyone else noticed that ftp.fedworld.gov returns a 1036 byte
>greeting, which I think is illegal under the spec, since "no NVT string
>will be longer than 1024 bytes".  This is an easy #define fix, but I was
>wondering if I am interpreting the problem assignment correctly...

The original wording was rather poor; an NVT string (i.e. a sequence of
bytes up to the \r\n terminator) can be assumed to be 1024 bytes or less,
but a full response may exceed this.  [N.B. this contradicts the assumption
stated in last year's newsgroup].

We won't be testing against this case (this year) since we only discovered
the error in wording quite recently.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 553 reply from ftp.cs.stanford.edu
Date: Wed, 22 Jan 2003 09:09:12 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043226552 19351 171.64.15.106 (22 Jan 2003 09:09:12 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3923



>I remember TA asks us to report any instance of 553 reply code, so I
>post one here. It is from ftp.cs.stanford.edu, for file permission denied.
>(I guess ftp.cs.stanford.edu just use 553 instead of 550)

>One example is when try to RETR pub/sec/john-1.5.tar.gz, of which third
>party doesn't have permission, 553 is returned.

>For now I just add 553-checking anywhere I have to check for 550, but I am
>not sure this will not introduce any conflicts in the grading tests.

There shouldn't be a problem with this approach.  However, during grading,
we'll be sure not to test against this particular server anyway.

.

Path: shelby.stanford.edu!not-for-mail
From: Kirk Phelps 
Newsgroups: su.class.cs244a
Subject: Re: submit script failing (no space left on device)
Date: Wed, 22 Jan 2003 02:06:17 -0800
Lines: 8
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine19.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043229977 21065 171.64.15.84 (22 Jan 2003 10:06:17 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3924

I have this problem as well...

Matthew Jonathan Holliman wrote:
> 
> >I'm trying to submit my hw1, but the script is failing.  Looks like the
> >submission directory may be over quota?  Here's the message I'm getting:
> 
> I've contacted the leland folks to see if they can fix things ASAP.
.

Path: shelby.stanford.edu!not-for-mail
From: Keaka Jackson 
Newsgroups: su.class.cs244a
Subject: Re: Can't run test script
Date: Wed, 22 Jan 2003 03:10:16 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine16.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043233817 22649 171.64.15.81 (22 Jan 2003 11:10:17 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3925

I can't run the test script either, it appears their volume is out of
space!  I get the following error: 
can't create test record in
/afs/ir/class/cs244a/grading_script/student/keaka! (No space left on
device)
couldn't submit code for testing

TA's help!!!

keaka

Aseem Sharma wrote:
> 
> Hi Guys,
> 
> For some reason, I cannot run the test script. I'm an SCPD student
> and the error I get is
> 
> Test record directory /afs/ir/class/cs244a/grading_script/student/aseems
> does not exist!
> couldn't submit code for testing
> 
> clues ??
> 
> Aseem
.

Path: shelby.stanford.edu!saga20.Stanford.EDU!mbillens
From: Matthew Billenstein 
Newsgroups: su.class.cs244a
Subject: Re: Can't run test script
Date: Wed, 22 Jan 2003 04:07:45 -0800
Lines: 35
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043237267 24154 171.64.15.150 (22 Jan 2003 12:07:47 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3926


Delete some files from your home directory...

m


On Wed, 22 Jan 2003, Keaka Jackson wrote:

> I can't run the test script either, it appears their volume is out of
> space!  I get the following error:
> can't create test record in
> /afs/ir/class/cs244a/grading_script/student/keaka! (No space left on
> device)
> couldn't submit code for testing
>
> TA's help!!!
>
> keaka
>
> Aseem Sharma wrote:
> >
> > Hi Guys,
> >
> > For some reason, I cannot run the test script. I'm an SCPD student
> > and the error I get is
> >
> > Test record directory /afs/ir/class/cs244a/grading_script/student/aseems
> > does not exist!
> > couldn't submit code for testing
> >
> > clues ??
> >
> > Aseem
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Georg Petschnigg" 
Newsgroups: su.class.cs244a
Subject: Re: submit script failing (no space left on device)
Date: Wed, 22 Jan 2003 04:44:12 -0800
Lines: 22
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: georgp.stanford.edu
X-Trace: news.Stanford.EDU 1043239454 25951 128.12.181.68 (22 Jan 2003 12:44:14 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3927

I can't seem to submit my code either:

"can't create test record in
/afs/ir/class/cs244a/grading_script/student/georgp! (No space left on
device)
couldn't submit code for testing"

Bummer - I had planned to run my tests now....

Georg


"Matthew Jonathan Holliman"  wrote in message

>
> >I'm trying to submit my hw1, but the script is failing.  Looks like the
> >submission directory may be over quota?  Here's the message I'm getting:
>
> I've contacted the leland folks to see if they can fix things ASAP.
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Mike Ching" 
Newsgroups: su.class.cs244a
Subject: Test script failing
Date: Wed, 22 Jan 2003 05:34:56 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: starbase.stanford.edu
X-Trace: news.Stanford.EDU 1043242489 27143 128.12.141.50 (22 Jan 2003 13:34:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3928

Similar to the submission problem, it looks like we are out of disk space to
run the testcases.  I am getting the following error:

can't create test record in
/afs/ir/class/cs244a/grading_script/student/ching! (No space left on device)
couldn't submit code for testing

I just added some comments in preparation for submitting.  I would like
to run the test script one more time to make sure I didn't
screw up the code by accident when commenting!

Mike


.

Path: shelby.stanford.edu!not-for-mail
From: "Ramesh Balakrishnan" 
Newsgroups: su.class.cs244a
Subject: Still can't run test scripts
Date: Wed, 22 Jan 2003 06:10:36 -0800
Lines: 39
Distribution: su
Message-ID: 
NNTP-Posting-Host: boltblaster.stanford.edu
X-Trace: news.Stanford.EDU 1043244637 27993 128.12.71.90 (22 Jan 2003 14:10:37 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3929

I'm getting the same error that the previous few posts mentioned.

What's worse is that I haven't run the scripts even once so far (I know, I
know... should have started earlier). Still, I'd like to be able to run the
scripts and have enough time left over to fix whatever bugs come up.

-Ramesh

/*
fable18:~/cs244a/a2> /afs/ir/class/cs244a/bin/test_code.pl hw1 Makefile *.c
*.h
Creating submission tarball...
Makefile
ftopcopy.c
ftpcopy.c
ftpparse.c
ftpcopy.h
ftpparse.h

Starting...
Test B, new source tree required, extracting into grading_src/build...
Makefile
ftopcopy.c
ftpcopy.c
ftpparse.c
ftpcopy.h
ftpparse.h

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 3 test attempts applies (from Jan 20 onwards).
You've used 0 test attempt(s) so far today.
can't create test record in
/afs/ir/class/cs244a/grading_script/student/rameshb! (No space left on
device)
couldn't submit code for testing
*/


.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!gcs
From: Giri Sreenivas 
Newsgroups: su.class.cs244a
Subject: problems running script
Date: Wed, 22 Jan 2003 06:35:50 -0800
Lines: 34
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine1.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043246152 28431 171.64.15.66 (22 Jan 2003 14:35:52 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3930

i too am having problems running the test script. i still have 5 runs
available to me, however, i receive the following error:

elaine26:~/private/cs244a> /afs/ir/class/cs244a/bin/test_code.pl hw1
Makefile *.c *.h
Creating submission tarball...
Makefile
darray.c
ftpcopy.c
ftpparse.c
scanner.c

Starting...
Test B, new source tree required, extracting into grading_src/build...
Makefile
darray.c
ftpcopy.c
ftpparse.c
scanner.c

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 3 test attempts applies (from Jan 20 onwards).
You've used 0 test attempt(s) so far today.
can't create test record in
/afs/ir/class/cs244a/grading_script/student/gcs! (No space left on device)
couldn't submit code for testing

I'd like to have the script runs to verify my program and time to fix any
bugs that arise.

Giri


.

Path: shelby.stanford.edu!not-for-mail
From: "Chip Hunter" 
Newsgroups: su.class.cs244a
Subject: Re: problems running script
Date: Wed, 22 Jan 2003 07:29:53 -0800
Lines: 40
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: dn800c6008.stanford.edu
X-Trace: news.Stanford.EDU 1043249587 29551 128.12.96.8 (22 Jan 2003 15:33:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3931

I have the same problem...

"Giri Sreenivas"  wrote in message

> i too am having problems running the test script. i still have 5 runs
> available to me, however, i receive the following error:
>
> elaine26:~/private/cs244a> /afs/ir/class/cs244a/bin/test_code.pl hw1
> Makefile *.c *.h
> Creating submission tarball...
> Makefile
> darray.c
> ftpcopy.c
> ftpparse.c
> scanner.c
>
> Starting...
> Test B, new source tree required, extracting into grading_src/build...
> Makefile
> darray.c
> ftpcopy.c
> ftpparse.c
> scanner.c
>
> Can't find a matching key for this test run.
> Would you like to generate a new one?  (y/n):  y
> Daily quota of 3 test attempts applies (from Jan 20 onwards).
> You've used 0 test attempt(s) so far today.
> can't create test record in
> /afs/ir/class/cs244a/grading_script/student/gcs! (No space left on device)
> couldn't submit code for testing
>
> I'd like to have the script runs to verify my program and time to fix any
> bugs that arise.
>
> Giri
>
>


.

Path: shelby.stanford.edu!epic9.Stanford.EDU!sansari
From: Saad Salman Ansari 
Newsgroups: su.class.cs244a
Subject: Unable to submit
Date: Wed, 22 Jan 2003 09:26:24 -0800
Lines: 24
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043256385 2787 171.64.15.42 (22 Jan 2003 17:26:25 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3932

Hi.
When I try to run the submit script it tells me its out of space. What am
I supposed to do? I'm getting the following reply:

SubmitBase: /afs/ir/class/cs244a/submissions
Debug Level = 0
mkdir /afs/ir/class/cs244a/submissions/grading/hw1/holliman/sansari
mkdir /afs/ir/class/cs244a/submissions/grading/hw1/holliman/sansari: No
space left on device at /usr/class/cs244a/bin/submit line 133


ps. in the deliverables section of the assignment handout, it states that
the submission program will require *.c source code. That doesn't mean
that it will skip the *.h files right(unlike the test script?) Also the
submission command given in the handout is :

/usr/class/cs244a/bin/submit TA hw1

but i think it should be:

/usr/class/cs244a/bin/submit hw1 TA

thanks!

.

Path: shelby.stanford.edu!not-for-mail
From: Keaka Jackson 
Newsgroups: su.class.cs244a
Subject: Re: Can't run test script
Date: Wed, 22 Jan 2003 09:39:58 -0800
Lines: 46
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: keaka.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043257199 3221 128.12.173.113 (22 Jan 2003 17:39:59 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3933

I have over 100 MB available in my home directory!!  Surely the test 
script doesn't require that much space (since we only have 50MB of quota 
for cs244a)?!!  And the script complains that there is no space in the 
class directory, not mine.  Although I should have started the project 
earlier, I haven't run the test script at all and would really like to 
before it's due!  Please help!

keaka

Matthew Billenstein wrote:
> Delete some files from your home directory...
> 
> m
> 
> 
> On Wed, 22 Jan 2003, Keaka Jackson wrote:
> 
> 
>>I can't run the test script either, it appears their volume is out of
>>space!  I get the following error:
>>can't create test record in
>>/afs/ir/class/cs244a/grading_script/student/keaka! (No space left on
>>device)
>>couldn't submit code for testing
>>
>>TA's help!!!
>>
>>keaka
>>
>>Aseem Sharma wrote:
>>
>>>Hi Guys,
>>>
>>>For some reason, I cannot run the test script. I'm an SCPD student
>>>and the error I get is
>>>
>>>Test record directory /afs/ir/class/cs244a/grading_script/student/aseems
>>>does not exist!
>>>couldn't submit code for testing
>>>
>>>clues ??
>>>
>>>Aseem
>>
> 

.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Re: Can't run test script
Date: Wed, 22 Jan 2003 10:16:37 -0800
Lines: 57
Distribution: su
Message-ID: 
References: 
  
 
NNTP-Posting-Host: elaine16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043259400 4341 171.64.15.81 (22 Jan 2003 18:16:40 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3934

Ditto on the broken test script..would really like to be able to run this
stuff some more before the due time.

-Tim

On Wed, 22 Jan 2003, Keaka Jackson wrote:

> I have over 100 MB available in my home directory!!  Surely the test
> script doesn't require that much space (since we only have 50MB of quota
> for cs244a)?!!  And the script complains that there is no space in the
> class directory, not mine.  Although I should have started the project
> earlier, I haven't run the test script at all and would really like to
> before it's due!  Please help!
>
> keaka
>
> Matthew Billenstein wrote:
> > Delete some files from your home directory...
> >
> > m
> >
> >
> > On Wed, 22 Jan 2003, Keaka Jackson wrote:
> >
> >
> >>I can't run the test script either, it appears their volume is out of
> >>space!  I get the following error:
> >>can't create test record in
> >>/afs/ir/class/cs244a/grading_script/student/keaka! (No space left on
> >>device)
> >>couldn't submit code for testing
> >>
> >>TA's help!!!
> >>
> >>keaka
> >>
> >>Aseem Sharma wrote:
> >>
> >>>Hi Guys,
> >>>
> >>>For some reason, I cannot run the test script. I'm an SCPD student
> >>>and the error I get is
> >>>
> >>>Test record directory /afs/ir/class/cs244a/grading_script/student/aseems
> >>>does not exist!
> >>>couldn't submit code for testing
> >>>
> >>>clues ??
> >>>
> >>>Aseem
> >>
> >
>
>



.

Path: shelby.stanford.edu!epic4.Stanford.EDU!smadhura
From: Madhura Sudhakar Sharangpani 
Newsgroups: su.class.cs244a
Subject: Unable to submit assignment
Date: Wed, 22 Jan 2003 10:17:21 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043259442 4402 171.64.15.37 (22 Jan 2003 18:17:22 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3935

Hi
I am having same problem mentioned before.
I can not submit the assignment,
I get error

SubmitBase: /afs/ir/class/cs244a/submissions
Debug Level = 0
mkdir /afs/ir/class/cs244a/submissions/grading/hw1/rdg12/smadhura
mkdir /afs/ir/class/cs244a/submissions/grading/hw1/rdg12/smadhura: No
space left on device at /usr/class/cs244a/bin/submit.pl line 133

while submitting
My TA is Russell Greene

Madhura.


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: can't submit
Date: Wed, 22 Jan 2003 18:19:01 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic28.stanford.edu
X-Trace: news.Stanford.EDU 1043259541 4455 171.64.15.59 (22 Jan 2003 18:19:01 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3936


device full
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Scripts back up again...
Date: Wed, 22 Jan 2003 18:52:19 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1043261539 5841 171.64.15.77 (22 Jan 2003 18:52:19 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3937

Everyone,

the test and submit scripts were down this morning due to the fact that we ran out of quota. This is 
fixed now and everything should work as usual. Apologies for any inconvenience!

  Guido
.

Path: shelby.stanford.edu!saga3.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: assigmnent 2 questions
Date: Wed, 22 Jan 2003 11:04:20 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043262263 6378 171.64.15.133 (22 Jan 2003 19:04:23 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3938

1) the spec states that we should send data as soon as data is available
from the application. Does this mean we send data as soon data is
available regardless of whether we get ACKs from the previously sent data
(as long as we remain in the receiver's window)? Or, can we wait for an
ACK before sending the next segment although there may still be data
pending from the app.

2) regarding:
STCP treats application data as a stream. This means that no artificial
boundaries are imposed on the data by the transport layer. If a host calls
transport_write() twice with 256 bytes each time, and then the peer calls
transport_read() with a buffer of 512 bytes, it will receive all 512 bytes
of available data, not just the first 256 bytes. It is STCP's job to break
up the data into packets and reassemble the data on the other side.

Does this mean if an app on one host writes twice with 256 bytes each time
then the other app should read all 512 bytes of data with 512 byte buffer?

.

Path: shelby.stanford.edu!not-for-mail
From: Keaka Jackson 
Newsgroups: su.class.cs244a
Subject: Re: Scripts back up again...
Date: Wed, 22 Jan 2003 11:29:23 -0800
Lines: 47
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine18.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043263763 7150 171.64.15.83 (22 Jan 2003 19:29:23 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3939

Now I get the following error when trying to run the test script:
Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN>
line 1.
couldn't submit code for testing

An earlier newsgroup post suggested that submitting binaries causes this
problem, but I am only submitting text files.  Has anybody else seen
this?  Any suggestions?  Here's the rest of the script output:

/afs/ir/class/cs244a/bin/test_code.pl hw1 Makefile *.c *.h .purify
purify.output 
Creating submission tarball...
Makefile
ftpcopy.c
ftpparse.c
ftpparse.h
..purify
purify.output

Starting...
Test B, new source tree required, extracting into grading_src/build...
Makefile
ftpcopy.c
ftpparse.c
ftpparse.h
..purify
purify.output
Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 3 test attempts applies (from Jan 20 onwards).
You've used 0 test attempt(s) so far today.
Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN>
line 1.
couldn't submit code for testing


Thanks, 
Keaka

Guido Appenzeller wrote:
> 
> Everyone,
> 
> the test and submit scripts were down this morning due to the fact that we ran out of quota. This is
> fixed now and everything should work as usual. Apologies for any inconvenience!
> 
>   Guido
.

Path: shelby.stanford.edu!not-for-mail
From: Keaka Jackson 
Newsgroups: su.class.cs244a
Subject: Re: Scripts back up again...
Date: Wed, 22 Jan 2003 11:39:33 -0800
Lines: 54
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine18.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043264373 7326 171.64.15.83 (22 Jan 2003 19:39:33 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3940

Oops, nevermind, I'm a dope. The earlier newsgroup post on this topic
also suggests that zero length files are a prob, and since my .purify
was empty, the script wasn't happy.

-keaka

Keaka Jackson wrote:
> 
> Now I get the following error when trying to run the test script:
> Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN>
> line 1.
> couldn't submit code for testing
> 
> An earlier newsgroup post suggested that submitting binaries causes this
> problem, but I am only submitting text files.  Has anybody else seen
> this?  Any suggestions?  Here's the rest of the script output:
> 
> /afs/ir/class/cs244a/bin/test_code.pl hw1 Makefile *.c *.h .purify
> purify.output
> Creating submission tarball...
> Makefile
> ftpcopy.c
> ftpparse.c
> ftpparse.h
> .purify
> purify.output
> 
> Starting...
> Test B, new source tree required, extracting into grading_src/build...
> Makefile
> ftpcopy.c
> ftpparse.c
> ftpparse.h
> .purify
> purify.output
> Can't find a matching key for this test run.
> Would you like to generate a new one?  (y/n):  y
> Daily quota of 3 test attempts applies (from Jan 20 onwards).
> You've used 0 test attempt(s) so far today.
> Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN>
> line 1.
> couldn't submit code for testing
> 
> Thanks,
> Keaka
> 
> Guido Appenzeller wrote:
> >
> > Everyone,
> >
> > the test and submit scripts were down this morning due to the fact that we ran out of quota. This is
> > fixed now and everything should work as usual. Apologies for any inconvenience!
> >
> >   Guido
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: could not run purify'ed exe
Date: Wed, 22 Jan 2003 11:56:05 -0800
Lines: 47
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043265370 7939 171.64.15.115 (22 Jan 2003 19:56:10 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3941

Hi,

I ran the test script this morning. In Test M, I got the following
problem:

--------------------------------------------------------------------
Test M, using current source tree and build
make ftpcopy.purify
purify -cache-dir=/tmp/mingying  gcc -g -O0 -ansi -Wall -DSOLARIS  -o
ftpcopy.purify  ftpparse.o ftperror.o ftpcopy.o -lsocket -lnsl
Purify 2002a.06.00 Solaris 2 (32-bit) Copyright (C) 1992-2002 Rational
Software Corp.  All rights reserved.
Instrumenting: crt1.o crti.o values-Xc.o crtbegin.o ftpparse.o ftperror.o
ftpcopy.o libsocket.so.1 libnsl.so.1
libgcc.a....................................................... libc.so.1
crtend.o crtn.o libdl.so.1 libmp.so.2 libc_psr.so.1  Linking

Running purify'ed executable:  ./ftpcopy.purify txt 1 ftp.microsoft.com
Could not run purify'ed exe: Purify 2002a.06.00 Solaris 2 (32-bit)
Copyright (C) 1992-2002 Rational Software Corp.  All rights reserved.
Instrumenting: nss_files.so.1 Done.

ERROR: Failed to read from socket.

Test N, using current source tree and build
make ftpcopy.purify
make: `ftpcopy.purify' is up to date.

Running purify'ed executable:  ./ftpcopy.purify txt 1 ftp.microsoft.com
Test O, using current source tree and build
make ftpcopy.purify
make: `ftpcopy.purify' is up to date.
----------------------------------------------------------------------

Seems the problem is "Could not run purify'ed exe" so I got an error on
socket read. (I haven't touched the socket read part of code after my last
test run, which passed the test.) While in this same run, for later two
tests, purify seemed run fine. Then I mannually tested the same command
../ftpcopy.purify txt 1 ftp.microsoft.com, everything is fine.

I have never seen such an error message before. Anybody experienced please
help. Since I only have two chances of testing left, I would appreciate
to get some clue before proceed.

Thanks.
Mingying

.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: could not run purify'ed exe
Date: Wed, 22 Jan 2003 20:48:58 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine7.stanford.edu
X-Trace: news.Stanford.EDU 1043268538 9665 171.64.15.72 (22 Jan 2003 20:48:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3942


>Seems the problem is "Could not run purify'ed exe" so I got an error on
>socket read. (I haven't touched the socket read part of code after my last
>test run, which passed the test.) While in this same run, for later two
>tests, purify seemed run fine. Then I mannually tested the same command
>./ftpcopy.purify txt 1 ftp.microsoft.com, everything is fine.

It may be an intermittent problem, e.g. a race condition you find only
on that particular server.  If you repeat the test multiple times (both
in the shell and using the scripts), does it fail at other times?

.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Testing Script: What constitutes an "inaccessible file"?
Date: Wed, 22 Jan 2003 13:02:39 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043269362 10131 171.64.15.81 (22 Jan 2003 21:02:42 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3943

Under what conditions is a file considered to be "inaccessible" (as used
in the grading script.

Thanks,
Tim



.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Wed, 22 Jan 2003 21:03:24 +0000 (UTC)
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine7.stanford.edu
X-Trace: news.Stanford.EDU 1043269404 10151 171.64.15.72 (22 Jan 2003 21:03:24 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3944


>1) the spec states that we should send data as soon as data is available
>from the application. Does this mean we send data as soon data is
>available regardless of whether we get ACKs from the previously sent data
>(as long as we remain in the receiver's window)? Or, can we wait for an
>ACK before sending the next segment although there may still be data
>pending from the app.

Yes, as long as you don't exceed your windows you should send data as
soon as possible.

>2) regarding:
>STCP treats application data as a stream. This means that no artificial
>boundaries are imposed on the data by the transport layer. If a host calls
>transport_write() twice with 256 bytes each time, and then the peer calls
>transport_read() with a buffer of 512 bytes, it will receive all 512 bytes
>of available data, not just the first 256 bytes. It is STCP's job to break
>up the data into packets and reassemble the data on the other side.

>Does this mean if an app on one host writes twice with 256 bytes each time
>then the other app should read all 512 bytes of data with 512 byte buffer?

Yes, exactly as TCP would.
.

Path: shelby.stanford.edu!not-for-mail
From: wmagrath 
Newsgroups: su.class.cs244a
Subject: Re: testing script/Purify
Date: Wed, 22 Jan 2003 13:19:22 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
Reply-To:  
NNTP-Posting-Host: dn800cb906.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043270396 10718 128.12.185.6 (22 Jan 2003 21:19:56 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3945

I am running the test script from my directory which definitely has a 
..purify and purify.output file, yet I still fail Test M because there is 
an error parsing grade.purify.output: "grade.purify.output: No such file 
or directory".  When I look into the grading_src/build directory created 
by the test, there is no grade.purify.output file, but there is a 
purify.output file.  There are also purify object files, so it is able 
to compile ftpcopy.purify, and it doesn't seem to have any problems 
while running the ftpcopy.purify version.

Do other people pass this test?  Do I have a problem?

Thanks,
Bill

Matthew Jonathan Holliman wrote:

>A couple of people asked why the test script wasn't picking up their .purify
>or purify.output files, and was thus failing them on one or two of the later
>test cases.  So here's some clarification.
>
>The script takes whatever files you indicate--source files, Makefiles, etc.--
>and just copies them to a temporary directory (grading_src in your current
>working directory), where it runs all the tests.  So if you omit something
>like purify.output, it just ignores it.
>
>  
>

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: Re: could not run purify'ed exe
Date: Wed, 22 Jan 2003 14:05:45 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043273147 12078 171.64.15.115 (22 Jan 2003 22:05:47 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3946

Yeah, that may be the case. I ran the test script again and ran in shell
several times. Now everything works fine. Thanks.

Mingying


On Wed, 22 Jan 2003, Matthew Jonathan Holliman wrote:

>
> >Seems the problem is "Could not run purify'ed exe" so I got an error on
> >socket read. (I haven't touched the socket read part of code after my last
> >test run, which passed the test.) While in this same run, for later two
> >tests, purify seemed run fine. Then I mannually tested the same command
> >./ftpcopy.purify txt 1 ftp.microsoft.com, everything is fine.
>
> It may be an intermittent problem, e.g. a race condition you find only
> on that particular server.  If you repeat the test multiple times (both
> in the shell and using the scripts), does it fail at other times?
>
>

.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Testing Script: What constitutes an "inaccessible file"?
Date: Wed, 22 Jan 2003 22:59:09 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1043276349 13836 171.64.15.81 (22 Jan 2003 22:59:09 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3947


>Under what conditions is a file considered to be "inaccessible" (as used
>in the grading script.

A file for which you have no permissions to download.

.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: testing script/Purify
Date: Wed, 22 Jan 2003 23:01:17 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1043276477 13925 171.64.15.81 (22 Jan 2003 23:01:17 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3948


>I am running the test script from my directory which definitely has a 
>.purify and purify.output file, yet I still fail Test M because there is 
>an error parsing grade.purify.output: "grade.purify.output: No such file 
>or directory".  When I look into the grading_src/build directory created 
>by the test, there is no grade.purify.output file, but there is a 
>purify.output file.  There are also purify object files, so it is able 
>to compile ftpcopy.purify, and it doesn't seem to have any problems 
>while running the ftpcopy.purify version.

>Do other people pass this test?  Do I have a problem?

Yes.  grade.purify.output should be created by the script's running of
your ftpcopy.purify; are any error messages shown during the command
execution?  (Did you run the Purify environment setup scripts beforehand?)

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!tedu
From: Ted Unangst 
Newsgroups: su.class.cs244a
Subject: website instructions for sumbit
Date: Wed, 22 Jan 2003 15:11:42 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine32.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043277104 14250 171.64.15.107 (22 Jan 2003 23:11:44 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3949

http://www.stanford.edu/class/cs244a/project_guidelines.html says to run
/usr/class/cs244a/bin/submit TA assn# however that's backwards.
it's assn# then TA.

--
"What right does Congress have to go around making laws just
because they deem it necessary?"
      - M. Barry, Mayor of Washington, DC

.

Path: shelby.stanford.edu!not-for-mail
From: "Mike Ching" 
Newsgroups: su.class.cs244a
Subject: Problem submitting
Date: Wed, 22 Jan 2003 15:38:08 -0800
Lines: 28
Distribution: su
Message-ID: 
NNTP-Posting-Host: starbase.stanford.edu
X-Trace: news.Stanford.EDU 1043278684 15023 128.12.141.50 (22 Jan 2003 23:38:04 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3950

Can anyone give me a hand on how to submit the assignment?  What am I doing
wrong?  Thanks.

Mike


Script started on Wed Jan 22 15:33:33 2003
saga11:~/cs244a/pp1> /usr/class/cs244a/bin/submit.pl hw1 holliman

SubmitBase: /afs/ir/class/cs244a/submissions
Debug Level = 0
tar: z: unknown option
Usage: tar {txruc}[vfbFXhiBEelmopwnq[0-7]] [-k size] [tapefile] [blocksize]
[exclude-file] [-I include-file] files ...
======================================================================
Your code could not be sumitted because of some error.
If you think there is a mistake, please send an email to your TA
(holliman;  with the relevant information.
======================================================================


saga11:~/cs244a/pp1> exit

exit

script done on Wed Jan 22 15:33:47 2003


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem submitting
Date: Thu, 23 Jan 2003 00:17:08 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043281028 16265 171.64.15.106 (23 Jan 2003 00:17:08 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3951

>Can anyone give me a hand on how to submit the assignment?  What am I doing
>wrong?  Thanks.

It looks like you might have a different path order to most people.
Here's the output of which for me:

% which tar
/usr/pubsw/bin/tar

I've fixed the script to explicitly use this version of the program,
assuming this was the problem, so you can try again.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: website instructions for sumbit
Date: Thu, 23 Jan 2003 00:17:39 +0000 (UTC)
Lines: 3
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043281059 16280 171.64.15.106 (23 Jan 2003 00:17:39 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3952


Thanks.

.

Path: shelby.stanford.edu!saga3.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Wed, 22 Jan 2003 16:26:15 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043281576 16494 171.64.15.133 (23 Jan 2003 00:26:16 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3953

>
> >2) regarding:
> >STCP treats application data as a stream. This means that no artificial
> >boundaries are imposed on the data by the transport layer. If a host calls
> >transport_write() twice with 256 bytes each time, and then the peer calls
> >transport_read() with a buffer of 512 bytes, it will receive all 512 bytes
> >of available data, not just the first 256 bytes. It is STCP's job to break
> >up the data into packets and reassemble the data on the other side.
>
> >Does this mean if an app on one host writes twice with 256 bytes each time
> >then the other app should read all 512 bytes of data with 512 byte buffer?
>
> Yes, exactly as TCP would.

In that case, should we devise a method for one peer to tell the other
that it has recieved all of the data that it wishes to send or do we wait
for the app to close the socket.

.

Path: shelby.stanford.edu!elaine43.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Thu, 23 Jan 2003 01:35:08 +0000 (UTC)
Lines: 34
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine43.stanford.edu
X-Trace: news.Stanford.EDU 1043285708 18900 171.64.15.118 (23 Jan 2003 01:35:08 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3954


>> >2) regarding:
>> >STCP treats application data as a stream. This means that no artificial
>> >boundaries are imposed on the data by the transport layer. If a host calls
>> >transport_write() twice with 256 bytes each time, and then the peer calls
>> >transport_read() with a buffer of 512 bytes, it will receive all 512 bytes
>> >of available data, not just the first 256 bytes. It is STCP's job to break
>> >up the data into packets and reassemble the data on the other side.
>>
>> >Does this mean if an app on one host writes twice with 256 bytes each time
>> >then the other app should read all 512 bytes of data with 512 byte buffer?
>>
>> Yes, exactly as TCP would.

>In that case, should we devise a method for one peer to tell the other
>that it has recieved all of the data that it wishes to send or do we wait
>for the app to close the socket.

Could you clarify your question?  I don't understand what you're asking.
(A peer STCP implementation indicates it's finished reading/writing its data
via ACKs and a final FIN--there's no need to devise another method beyond
this).

I might clarify my previous answer by pointing out that your wording of
"the other app should..." in your initial post should be
"the other app could...".

The example of the assignment description is Machine A writing 256 bytes to
machine B over an STCP connection.  Then it writes another 256 bytes.  If
Machine B is listening on the other end, and it reads N bytes (1 <= N <= 512),
it should receive N bytes; it shouldn't see two or more distinct packets,
and should have no knowledge of how your protocol packetized the data that
A sent.  This is one of the differences between a stream oriented service
like TCP (or STCP), and a datagram service like UDP.
.

Path: shelby.stanford.edu!saga3.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Wed, 22 Jan 2003 17:49:52 -0800
Lines: 5
Distribution: su
Message-ID: 
References:  
  
 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043286593 19439 171.64.15.133 (23 Jan 2003 01:49:53 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3955

I was confused about the assignment discription. Your explanation
clarified things up. Thanks a lot.

Rhea

.

Path: shelby.stanford.edu!saga3.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: missing submitted files
Date: Wed, 22 Jan 2003 18:22:52 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043288574 20676 171.64.15.133 (23 Jan 2003 02:22:54 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3956

Hi,

Is it possible that some of the submissions are already removed from the
class submission directory? I last submitted my hw1 at 14:31 to TA
holliman. I did check at that time to make sure my tared files are there.
But now I can no longer see my directory, while it seems everybody else's
are there. Does it happen to any other people? Would TA please look into
this issue? My login name is mingying.

Thanks.
Mingying

.

Path: shelby.stanford.edu!elaine27.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: missing submitted files
Date: Thu, 23 Jan 2003 07:48:25 +0000 (UTC)
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine27.stanford.edu
X-Trace: news.Stanford.EDU 1043308105 283 171.64.15.102 (23 Jan 2003 07:48:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3957



>Is it possible that some of the submissions are already removed from the
>class submission directory? I last submitted my hw1 at 14:31 to TA
>holliman. I did check at that time to make sure my tared files are there.
>But now I can no longer see my directory, while it seems everybody else's
>are there. Does it happen to any other people? Would TA please look into
>this issue? My login name is mingying.

I have absolutely no idea what happened--did anyone else have this problem?
(Your submission should be in
/usr/class/cs244a/submissions/grading/hw1/TAname/yourname/files.tar.gz)

Can you please (1) give me permissions to see your source directory
(fs sa . holliman rl in whatever directories are necessary to see it),
and (2) try resubmitting the same code now.

Sorry for the inconvenience.

.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Thu, 23 Jan 2003 00:10:06 -0800
Lines: 32
Distribution: su
Message-ID: 
References:  
  
 
NNTP-Posting-Host: elaine8.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043309408 1344 171.64.15.73 (23 Jan 2003 08:10:08 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3958

On Thu, 23 Jan 2003, Matthew Jonathan Holliman wrote:

>
> The example of the assignment description is Machine A writing 256 bytes to
> machine B over an STCP connection.  Then it writes another 256 bytes.  If
> Machine B is listening on the other end, and it reads N bytes (1 <= N <= 512),
> it should receive N bytes; it shouldn't see two or more distinct packets,
> and should have no knowledge of how your protocol packetized the data that
> A sent.  This is one of the differences between a stream oriented service
> like TCP (or STCP), and a datagram service like UDP.
>

I was wondering if this is always the case or if it depends on the timing
the write and read operation take place.
If Machine in B is already listening on its end shouldn't we give it the
data as soon as it arrives? same thing if it issues the read after
the 1st packet is received but before the 2nd packet has arrived.
In other words, does calling transport_read() with a buffer of 512 mean
that we have to block until we can deliver 512 bytes worth of data?
That is not the semantics of read on a socket, is it? if we read on
a socket with a buffer of 512 we are saying that at most we can read
512 but if there's less data available we will recieve it anyway and
read will return the number of bytes read.
I would think that the example given in the assignment is only valid
for the case that both packets have been received by B's transport
layer before the application request the read.

Am I missing anything here?

Thanks
Rafa

.

Path: shelby.stanford.edu!elaine27.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: missing submitted files
Date: Thu, 23 Jan 2003 08:55:33 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine27.stanford.edu
X-Trace: news.Stanford.EDU 1043312133 2801 171.64.15.102 (23 Jan 2003 08:55:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3959



>Is it possible that some of the submissions are already removed from the
>class submission directory? I last submitted my hw1 at 14:31 to TA
>holliman. I did check at that time to make sure my tared files are there.
>But now I can no longer see my directory, while it seems everybody else's
>are there. Does it happen to any other people? Would TA please look into
>this issue? My login name is mingying.

Mystery solved--
I'd asked the leland folks to help sort out the out-of-space problems we
were running into yesterday.  They archived the class directory as part
of this process, and apparently some submissions were moved as a result,
unbeknownst to us.

Hopefully, there's nothing further for you to do; I'll move the necessary
files back over during grading.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Project 2: error building server.purify
Date: Thu, 23 Jan 2003 01:49:16 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043315358 4089 171.64.15.117 (23 Jan 2003 09:49:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3960

hi!

I did "make all.purify" on the sample code provided and tried to run
"server.purify" (by itself). the following message was returned. am I
missing something in the Makefile? I thought we did not (and should not)
mess with the Makefile that was provided at all ... :

elaine2:~/cs244a/mytcp> ./server.purify
ld.so.1: ./server.purify: fatal:
libsocket.so.1_pure_p3_c0_105022037_58_32_2171404S: open failed: No such
file or directory
Killed

thanks!

Tan

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Thu, 23 Jan 2003 20:43:19 +0000 (UTC)
Lines: 29
Distribution: su
Message-ID: 
References:        
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1043354599 22355 171.64.15.99 (23 Jan 2003 20:43:19 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3961


>I was wondering if this is always the case or if it depends on the timing
>the write and read operation take place.

Yes, it could depend on the timing.

>If Machine in B is already listening on its end shouldn't we give it the
>data as soon as it arrives? same thing if it issues the read after
>the 1st packet is received but before the 2nd packet has arrived.
>In other words, does calling transport_read() with a buffer of 512 mean
>that we have to block until we can deliver 512 bytes worth of data?

Yes; the assignment wording is meant to suggest that you buffer and reassemble
data as it arrives and pass it up to the application unpacketized (i.e. just
writing to the local data socket through which you communicate to the app).
You'll see that localsocketpair() in transport.c actually uses a stream
socket to communicate between the parent and child process, so if the client
does myread() for 512 bytes, it may or may not wait until you've written
512 bytes to the socket--just like regular read() semantics on TCP sockets.
You don't need to worry about this; you're just responsible for correctly
reassembling the incoming byte stream and writing that to the local application
socket.

>I would think that the example given in the assignment is only valid
>for the case that both packets have been received by B's transport
>layer before the application request the read.

It probably depends on the O/S implementation; some might block until all
(or at least some amount of) data has arrived.
.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Project 2: error building server.purify
Date: Thu, 23 Jan 2003 20:57:01 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1043355421 22760 171.64.15.99 (23 Jan 2003 20:57:01 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3962


>I did "make all.purify" on the sample code provided and tried to run
>"server.purify" (by itself). the following message was returned. am I
>missing something in the Makefile? I thought we did not (and should not)
>mess with the Makefile that was provided at all ... :

>elaine2:~/cs244a/mytcp> ./server.purify
>ld.so.1: ./server.purify: fatal:
>libsocket.so.1_pure_p3_c0_105022037_58_32_2171404S: open failed: No such
>file or directory
>Killed

server.purify works for me (on elaine24).  Have you run the Purify environment
set up scripts?  Does it work on other systems for you?

On the subject of the Makefile, I've fixed a couple of small bugs in it
just now, which don't affect Purify at all--so if anyone has already copied
the files, please copy the updated Makefile.  You may change the Makefile
for part (c)--and in fact, you'll need to if you use your ftpcopy for this
part of the assignment.

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Office hours start  late today
Date: Thu, 23 Jan 2003 17:40:21 -0800
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043372414 2262 171.64.74.37 (24 Jan 2003 01:40:14 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:3963

....but the TA is on his way!

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Change in office hour times...
Date: Fri, 24 Jan 2003 02:02:42 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: amy1.stanford.edu
X-Trace: news.Stanford.EDU 1043373762 3020 171.64.15.162 (24 Jan 2003 02:02:42 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:3964

Due to a scheduling conflict my office hours on Thursdays will move by an 
hour in the future. From now on they will be:

  Thursday, 6pm-7pm in Sweet Hall

  Guido
.

Path: shelby.stanford.edu!elaine27.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: ANSI C Comments
Date: Thu, 23 Jan 2003 20:53:01 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine27.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043383982 9758 171.64.15.102 (24 Jan 2003 04:53:02 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3965

Are the "//" style of comments allowed in assignments, as long as the rest
of the program is in pure C?


.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: ANSI C Comments
Date: Fri, 24 Jan 2003 05:06:04 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1043384764 10334 171.64.15.105 (24 Jan 2003 05:06:04 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3966


>Are the "//" style of comments allowed in assignments, as long as the rest
>of the program is in pure C?

Some ANSI C compilers won't compile this; even gcc doesn't with some flags
(maybe -ansi and -pedantic, I don't remember).  So please just stick with
C-style comments.

.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: network_recv blocking!
Date: Fri, 24 Jan 2003 01:11:48 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1043399316 17286 128.12.184.109 (24 Jan 2003 09:08:36 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:3967

Hi,

When trying to send SYN packets in transport_init, this is what I am doing:-
if it is_passive is 0,
    send a SYN packet using network_send
    wait for a SYNACK using network_recv
else if it is the passive process,
    wait for a SYN packet using network_recv
    send SYNACK

Both the processes are blocking at my call to network_recv , when i execute
the dummy server and client. What could be the mistake?

Thanx,
Pavan.


.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: network_recv blocking!
Date: Fri, 24 Jan 2003 09:33:56 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1043400836 17779 171.64.15.66 (24 Jan 2003 09:33:56 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3968


>When trying to send SYN packets in transport_init, this is what I am doing:-
>if it is_passive is 0,
>    send a SYN packet using network_send
>    wait for a SYNACK using network_recv
>else if it is the passive process,
>    wait for a SYN packet using network_recv
>    send SYNACK

>Both the processes are blocking at my call to network_recv , when i execute
>the dummy server and client. What could be the mistake?

Have you checked that your network_send() is sending the packet to
the right address (on the active side, as a result of the myconnect)?
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: PS2 Q1
Date: Fri, 24 Jan 2003 18:18:35 +0000 (UTC)
Organization: Stanford University
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1043432315 1272 171.64.15.100 (24 Jan 2003 18:18:35 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3969


ifconfig will give me all the interfaces for the machine I am (elaine say) on but 
I am unable to run it on the routers. How do I find all the interfaces
for a router?
.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: PS2 Q1
Date: Fri, 24 Jan 2003 13:10:32 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043442635 7307 171.64.15.117 (24 Jan 2003 21:10:35 GMT)
X-Complaints-To: 
To: David Seetapun 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3970

I did it using host

Rafa


On Fri, 24 Jan 2003, David Seetapun wrote:

>
> ifconfig will give me all the interfaces for the machine I am (elaine say) on but
> I am unable to run it on the routers. How do I find all the interfaces
> for a router?
>

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: network_recv blocking!
Date: Fri, 24 Jan 2003 23:07:53 +0000 (UTC)
Organization: Stanford University
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: epic1.stanford.edu
X-Trace: news.Stanford.EDU 1043449673 12702 171.64.15.34 (24 Jan 2003 23:07:53 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3971


Aren't you supposed to send the SYN to the IPC they set up?

In article 
 you write:
> Hi,
> 
> When trying to send SYN packets in transport_init, this is what I am doing:-
> if it is_passive is 0,
>     send a SYN packet using network_send
>     wait for a SYNACK using network_recv
> else if it is the passive process,
>     wait for a SYN packet using network_recv
>     send SYNACK
> 
> Both the processes are blocking at my call to network_recv , when i execute
> the dummy server and client. What could be the mistake?
> 
> Thanx,
> Pavan.
> 
> 
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: network_recv blocking!
Date: Fri, 24 Jan 2003 15:18:02 -0800
Lines: 38
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1043450347 13098 128.12.186.92 (24 Jan 2003 23:19:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3972

Hi all,

Make sure to attend or watch today's review session -- as Matt wil go into
great detail into the infrastructure for assignment 2.

That should clear up many of these initial questions.  Also, don't forget
that last year's newsgroup has a ton useful info.

--Russ

"David Seetapun"  wrote in message

>
> Aren't you supposed to send the SYN to the IPC they set up?
>
> In article 
>  you write:
> > Hi,
> >
> > When trying to send SYN packets in transport_init, this is what I am
doing:-
> > if it is_passive is 0,
> >     send a SYN packet using network_send
> >     wait for a SYNACK using network_recv
> > else if it is the passive process,
> >     wait for a SYN packet using network_recv
> >     send SYNACK
> >
> > Both the processes are blocking at my call to network_recv , when i
execute
> > the dummy server and client. What could be the mistake?
> >
> > Thanx,
> > Pavan.
> >
> >


.

Path: shelby.stanford.edu!not-for-mail
From: Neil Kumar Daswani 
Newsgroups: su.class.cs244a
Subject: How to TCP Source Port?
Date: Sat, 25 Jan 2003 00:19:30 -0800
Lines: 21
Distribution: su
Message-ID: 
NNTP-Posting-Host: myth4.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043482770 29646 171.64.15.17 (25 Jan 2003 08:19:30 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:3973


When client.c calls myconnect() in mysock.c, the TCP destination port is
explicitly specified in the struct sockaddr * parameter.  This
information gets passed onto transport_init() and gets filled into
tcp_hdr.th_dport.

When setting up the connection with the server, how should
transport_init() choose the TCP source port to be filled into
tcp_hdr.th_sport?

Should we, for example, just make up some source port number?  Should
this source port number be selected so that it is distinct from any
other TCP port that is being used on the client?  

Is this irrelevant anyway since packets that we receive on the incoming
data socket can only be destined for the open port corresponding to that
child process?  That is, is the choice of the source port number
irrelevant since we are not required to do port de-multiplexing as we
would have to do if we were writing a "real" TCP implementation?

-- Neil
.

Date: Sat, 25 Jan 2003 10:32:36 -0800
From: Matthew Jonathan Holliman 
Message-ID: 
To: 
Subject: Re: CS244a: updated review session slides
Cc: 
Lines: 11
Newsgroups: su.class.cs244a
Organization: Stanford University Posting Gateway (mailtonews 1.3/0.42)
Path: shelby.stanford.edu!mail-to-news!elaine11.stanford.edu
Sender: 
X-Mail-Path: 
X-Original-Date: Sat, 25 Jan 2003 10:32:35 -0800 (PST)
Xref: shelby.stanford.edu su.class.cs244a:3974

> I am stuck not being able to debug my assignment because I am not able to
> follow the child process. any idea? I tried what ypu suggested in
> class..i.e sleep and all, but that didn't work either.

(1) Add sleep(10) (or something similar) in your child code after the fork()
(2) Run the server/client pair outside of gdb
(3) Do ps, and find the larger PID of the two server processes (or the two
client processes, if that's what you want to debug)
(4) Run 'gdb server PID' for the PID you found in step 3 (assuming you're
debugging the server side)
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: How to TCP Source Port?
Date: Sat, 25 Jan 2003 19:58:32 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1043524712 15269 171.64.15.112 (25 Jan 2003 19:58:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3975

Take a look at getpeername() and getsockname().  Post again
if these calls don't address your need.

SteveJ


In article 
Neil Kumar Daswani   wrote:
>
>When client.c calls myconnect() in mysock.c, the TCP destination port is
>explicitly specified in the struct sockaddr * parameter.  This
>information gets passed onto transport_init() and gets filled into
>tcp_hdr.th_dport.
>
>When setting up the connection with the server, how should
>transport_init() choose the TCP source port to be filled into
>tcp_hdr.th_sport?
>
>Should we, for example, just make up some source port number?  Should
>this source port number be selected so that it is distinct from any
>other TCP port that is being used on the client?  
>
>Is this irrelevant anyway since packets that we receive on the incoming
>data socket can only be destined for the open port corresponding to that
>child process?  That is, is the choice of the source port number
>irrelevant since we are not required to do port de-multiplexing as we
>would have to do if we were writing a "real" TCP implementation?
>
>-- Neil


.

Path: shelby.stanford.edu!saga1.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Sat, 25 Jan 2003 12:37:45 -0800
Lines: 46
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga1.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043527067 16221 171.64.15.131 (25 Jan 2003 20:37:47 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3976

> >1) the spec states that we should send data as soon as data is
> >available from the application. Does this mean we send data as soon
> >data is available regardless of whether we get ACKs from the previously
> >sent data (as long as we remain in the receiver's window)? Or, can we
> >wait for an ACK before sending the next segment although there may
> >still be data pending from the app.
>
> Yes, as long as you don't exceed your windows you should send data as
> soon as possible.

I think I need some clarification on this issue. Especially wrt go-back-n.

Assume the receiver window is 3000 bytes as this example is in the
"beginning".

Let's say the sender sent 1000 bytes but hasn't heard an ACK for them.
Using go-back-n, it has retransmitted all 1000 bytes 3 times. Now the
application wishes to "write" 400 new bytes. Those should be sent out now
as 400 bytes, rather than attempting to "go back n" to send those 400 in
the context of the 1400 unacknowledged bytes?

Thus, should transmitting something the first time has a higher precedence
than retransmitting data?

And to extend this scenario, let's say that after sending out those 400
new bytes, we don't hear an ACK by the time the interrupt timeout for
bytes [0,999] comes around. (But NOT the timeout for bytes [1000,1399].)

Are we supposed to retransmit [0,999] or [0,1399] at this point?

The definition of "Go back N" suggests the latter since if it has decided
its "peer has not received the segment with sequence number 0, then it
will retransmit ALL data starting at 0, not just that segment". Is this
interpretation incorrect?

Effectively, I believe this " go back n" statement states that "when we
have received a timeout, retransmit all data starting at the beginning of
the window up through the end"?

Does somebody else have a better example to illustrate what should
happen?

thanks.

Jonathan

.

Path: shelby.stanford.edu!not-for-mail
From: "Neil Daswani" 
Newsgroups: su.class.cs244a
Subject: Re: How to TCP Source Port?
Date: Sat, 25 Jan 2003 12:47:33 -0800
Organization: Stanford University
Lines: 45
Distribution: su
Message-ID: 
References:  
Reply-To: "Neil Daswani" 
NNTP-Posting-Host: dn800cbf07.stanford.edu
X-Trace: news.Stanford.EDU 1043527128 16231 128.12.191.7 (25 Jan 2003 20:38:48 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4133.2400
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
Xref: shelby.stanford.edu su.class.cs244a:3977

I think getsockname() will give me the IP address that I need for the data
connection (comm_fd), but not the port number.  Won't getsockname() give me
back the UDP port number for the comm_fd data connection?  Should I set the
STCP source port to be the same as this UDP port number?

What do the test scripts expect this STCP source port number to be, or do
they not test for it?

-- Neil

"Steve Jacobson"  wrote in message

> Take a look at getpeername() and getsockname().  Post again
> if these calls don't address your need.
>
> SteveJ
>
>
> In article 
> Neil Kumar Daswani   wrote:
> >
> >When client.c calls myconnect() in mysock.c, the TCP destination port is
> >explicitly specified in the struct sockaddr * parameter.  This
> >information gets passed onto transport_init() and gets filled into
> >tcp_hdr.th_dport.
> >
> >When setting up the connection with the server, how should
> >transport_init() choose the TCP source port to be filled into
> >tcp_hdr.th_sport?
> >
> >Should we, for example, just make up some source port number?  Should
> >this source port number be selected so that it is distinct from any
> >other TCP port that is being used on the client?
> >
> >Is this irrelevant anyway since packets that we receive on the incoming
> >data socket can only be destined for the open port corresponding to that
> >child process?  That is, is the choice of the source port number
> >irrelevant since we are not required to do port de-multiplexing as we
> >would have to do if we were writing a "real" TCP implementation?
> >
> >-- Neil
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Noh, Jeonghun" 
Newsgroups: su.class.cs244a
Subject: th_seq of ACK packets & retransmission of ACKs.
Date: Sat, 25 Jan 2003 12:49:46 -0800
Organization: Stanford. EE
Lines: 40
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab4081de.stanford.edu
X-Trace: news.Stanford.EDU 1043527903 16612 171.64.129.222 (25 Jan 2003 20:51:43 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3978

1. In the PA#2 handout, the part of the ACK Packets says that if the ACK bit
in the flags field is set to 1, the ack_seq field contains the sequence
number of the next byte of data the receiver expects.

Does 'ack_seq' mean both th_ack and th_seq or only th_ack?

We are not allowed to piggyback data on the ack packets, ACK has no payload.
That is, the th_seq field of the ACK has no meaning at all. Is it correct?

2. Like the example in the PA#2 handout, if we assume the last
acknowledgment sent was 10 and a packet containing data with sequence number
15 of length 5 is received,

do we have to send ACK with the th_seq 10 or just suppress to produce ACKs
until we receive a packet with sequence number 10 of length 5 and send only
one ACK?

I got confused because we should send a duplicate ACK when we receive a
duped data packet, just like a normal TCP.

3. About the th_seq of ACKs
I seem to know th_ack of ACKs indicates the next byte of data the receiver
expects. What about th_seq of ACKs? Will it be the next byte of data the
receiver will send? Even though the receiver will send no data packets
except ack packets, do we have to be precise in dealing with th_seq of ACKs?

My understanding is there are 3 kinds of ACKs, SYN-ACKs, FIN-ACKs, and
ACKs(normal acks to data reception). I wonder how we should handle the last
case.

--
*********************************
Jeonghun Noh
Dept. of Electrical Engineering
Stanford University
Tel : 1-650-497-6665

*********************************


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Question about termination
Date: Sat, 25 Jan 2003 17:09:44 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043543366 22540 128.12.195.69 (26 Jan 2003 01:09:26 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3979

Hi,

After the application requested a connection close, the child gets a zero
from reading on the localpipe, and it then sends the FIN packet. Say there
are still 1000 bytes that the peer has not acknowledged yet, should we wait
around for the outstanding bytes to be acknowledged before sending the FIN?
(and if there is loss in those 1000 bytes, do we retransmit before sending
the FIN?)

-myl


.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Sun, 26 Jan 2003 01:44:28 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 77
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1043545468 23480 171.64.15.111 (26 Jan 2003 01:44:28 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3980

Comments below:

In article 
Jonathan D Herbach   wrote:
>> >1) the spec states that we should send data as soon as data is
>> >available from the application. Does this mean we send data as soon
>> >data is available regardless of whether we get ACKs from the previously
>> >sent data (as long as we remain in the receiver's window)? Or, can we
>> >wait for an ACK before sending the next segment although there may
>> >still be data pending from the app.
>>
>> Yes, as long as you don't exceed your windows you should send data as
>> soon as possible.
>
>I think I need some clarification on this issue. Especially wrt go-back-n.
>
>Assume the receiver window is 3000 bytes as this example is in the
>"beginning".
>
>Let's say the sender sent 1000 bytes but hasn't heard an ACK for them.
>Using go-back-n, it has retransmitted all 1000 bytes 3 times. Now the
>application wishes to "write" 400 new bytes. Those should be sent out now
>as 400 bytes, rather than attempting to "go back n" to send those 400 in
>the context of the 1400 unacknowledged bytes?

Yes.  Assuming the timeout timer has not popped for the 1000 bytes,
the 400 bytes would be sent out at this time.

>
>Thus, should transmitting something the first time has a higher precedence
>than retransmitting data?

Not really.  I think it's reasonable to consider the priority 
the same.  If, at some instant at time you have new data to
send and a retransmission to handle, either could be handled
first.

>
>And to extend this scenario, let's say that after sending out those 400
>new bytes, we don't hear an ACK by the time the interrupt timeout for
>bytes [0,999] comes around. (But NOT the timeout for bytes [1000,1399].)
>
>Are we supposed to retransmit [0,999] or [0,1399] at this point?

Assuming that the retransmit timer has popped for [0,999] but
the retransmit timer has not popped for [1000,1399], only
[0,999] should be resent.

>
>The definition of "Go back N" suggests the latter since if it has decided
>its "peer has not received the segment with sequence number 0, then it
>will retransmit ALL data starting at 0, not just that segment". Is this
>interpretation incorrect?
>
>Effectively, I believe this " go back n" statement states that "when we
>have received a timeout, retransmit all data starting at the beginning of
>the window up through the end"?

Consider the scenario where bytes [1000,1399] were received,
but bytes [600,999] were lost.  The receiver would have ACKed
all bytes 599 and before.  However, no mechanism exists for
acknowledging [1000,1399], since [600,999] have gone missing.
So, the receiver sits quietly and sends no ACKs.  The sender
is forced to go back and send all of [600,1399] again.

SteveJ

>
>Does somebody else have a better example to illustrate what should
>happen?
>
>thanks.
>
>Jonathan
>


.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Question about termination
Date: Sun, 26 Jan 2003 02:28:35 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1043548115 24702 171.64.15.111 (26 Jan 2003 02:28:35 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3981

The sender should send the 1000 bytes reliably before sending
the FIN.  This means all 1000 bytes should be acknowledged by
the receiver first.

SteveJ

In article 
Man Yu Lui  wrote:
>Hi,
>
>After the application requested a connection close, the child gets a zero
>from reading on the localpipe, and it then sends the FIN packet. Say there
>are still 1000 bytes that the peer has not acknowledged yet, should we wait
>around for the outstanding bytes to be acknowledged before sending the FIN?
>(and if there is loss in those 1000 bytes, do we retransmit before sending
>the FIN?)
>
>-myl
>
>


.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Part 2(a):  Window Handling
Date: Sun, 26 Jan 2003 02:50:32 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1043549432 25329 171.64.15.111 (26 Jan 2003 02:50:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3982

This is in response to a query during my Friday office hours.

For programming assignment 2 part (a), you do not need to worry
about handling packets that fall outside or partially outside the
receive window.

However, for part 2(b), you must be able to handle all of these
cases correctly.  Keep this is in mind while designing your code.

Good luck!

SteveJ

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Problem with test script
Date: Sat, 25 Jan 2003 20:04:34 -0800
Lines: 25
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043553855 27050 128.12.195.69 (26 Jan 2003 04:04:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3983

Hi,

When I try the test script on hw2a, I got this error:

Testing input file TESTDATA.0

Starting student server:
/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/server 
 -p
/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.server
_port 2>&1 >
/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.server
_output &
Server started
connected to 171.64.15.104 at port 56696
client: TESTDATA.0
Fatal error:  Can't find expected file
/usr/class/cs244a/grading_script/hw2/TESTDATA.0!
couldn't submit code for testing

Any idea what may be causing this?

-myl


.

Path: shelby.stanford.edu!not-for-mail
From: "Amit Garg" 
Newsgroups: su.class.cs244a
Subject: sending SYN blocks
Date: Sat, 25 Jan 2003 21:39:54 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: gatesb02-pc19.stanford.edu
X-Trace: news.Stanford.EDU 1043559600 29108 171.64.65.43 (26 Jan 2003 05:40:00 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3984

Hi Guys,

WHile sending SYN, I'm sending the correct socket(com_sock) and I've checked
the value of the ports (source and destination). the network_send comes back
without an error but my server doesn't get woken up from the select. Clues ?


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: same problem with test script
Date: Sun, 26 Jan 2003 06:50:17 +0000 (UTC)
Organization: Stanford University
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic25.stanford.edu
X-Trace: news.Stanford.EDU 1043563817 918 171.64.15.62 (26 Jan 2003 06:50:17 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3985


Testing input file TESTDATA.0

Starting student server: /afs/ir.stanford.edu/users/s/e/seetapun/cs244a/pp2/grad
ing_src/build/server  -p /afs/ir.stanford.edu/users/s/e/seetapun/cs244a/pp2/grad
ing_src/build/.server_port 2>&1 > /afs/ir.stanford.edu/users/s/e/seetapun/cs244a
/pp2/grading_src/build/.server_output &
Server started
connected to 171.64.15.62 at port 45690
client: TESTDATA.0
Fatal error:  Can't find expected file /usr/class/cs244a/grading_script/hw2/TEST
DATA.0!
couldn't submit code for testing
.

Path: shelby.stanford.edu!myth7.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: sending SYN blocks
Date: Sat, 25 Jan 2003 23:22:58 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: myth7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043565780 2007 171.64.15.21 (26 Jan 2003 07:23:00 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:3986

On Sat, 25 Jan 2003, Amit Garg wrote:

> Hi Guys,
>
> WHile sending SYN, I'm sending the correct socket(com_sock) and I've checked
> the value of the ports (source and destination). the network_send comes back
> without an error but my server doesn't get woken up from the select. Clues ?
>
>
>
I know you have to use FD_SET before you call select *each* time. Also
you have to make sure that use use FD_ZERO before you initialize the
struct every time. Lastly check that maxfs (the first arg to select)
is the right value (taking the MAX of all you fds). Hope that helps...

Rhea

.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: How to TCP Source Port?
Date: Sun, 26 Jan 2003 07:39:49 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 55
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1043566789 2354 171.64.15.111 (26 Jan 2003 07:39:49 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3987

I think the port number returned by getsockname() should be
the correct one to use for STCP.  Other TAs, any comments
on this?

SteveJ

In article 
Neil Daswani  wrote:
>I think getsockname() will give me the IP address that I need for the data
>connection (comm_fd), but not the port number.  Won't getsockname() give me
>back the UDP port number for the comm_fd data connection?  Should I set the
>STCP source port to be the same as this UDP port number?
>
>What do the test scripts expect this STCP source port number to be, or do
>they not test for it?
>
>-- Neil
>
>"Steve Jacobson"  wrote in message

>> Take a look at getpeername() and getsockname().  Post again
>> if these calls don't address your need.
>>
>> SteveJ
>>
>>
>> In article 
>> Neil Kumar Daswani   wrote:
>> >
>> >When client.c calls myconnect() in mysock.c, the TCP destination port is
>> >explicitly specified in the struct sockaddr * parameter.  This
>> >information gets passed onto transport_init() and gets filled into
>> >tcp_hdr.th_dport.
>> >
>> >When setting up the connection with the server, how should
>> >transport_init() choose the TCP source port to be filled into
>> >tcp_hdr.th_sport?
>> >
>> >Should we, for example, just make up some source port number?  Should
>> >this source port number be selected so that it is distinct from any
>> >other TCP port that is being used on the client?
>> >
>> >Is this irrelevant anyway since packets that we receive on the incoming
>> >data socket can only be destined for the open port corresponding to that
>> >child process?  That is, is the choice of the source port number
>> >irrelevant since we are not required to do port de-multiplexing as we
>> >would have to do if we were writing a "real" TCP implementation?
>> >
>> >-- Neil
>>
>>
>
>


.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem with test script
Date: Sun, 26 Jan 2003 07:43:20 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 33
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1043567000 2517 171.64.15.111 (26 Jan 2003 07:43:20 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3988

Our script wizard has been notified.

SteveJ

In article 
Man Yu Lui  wrote:
>Hi,
>
>When I try the test script on hw2a, I got this error:
>
>Testing input file TESTDATA.0
>
>Starting student server:
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/server 
> -p
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.server
>_port 2>&1 >
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.server
>_output &
>Server started
>connected to 171.64.15.104 at port 56696
>client: TESTDATA.0
>Fatal error:  Can't find expected file
>/usr/class/cs244a/grading_script/hw2/TESTDATA.0!
>couldn't submit code for testing
>
>Any idea what may be causing this?
>
>-myl
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: different kill-clients and kill-servers one-liners
Date: Sun, 26 Jan 2003 00:28:12 -0800
Lines: 26
Distribution: su
Message-ID: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1043569691 4292 128.12.91.22 (26 Jan 2003 08:28:11 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:3989

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi all,

The shell commands given in the assignment for killing orphaned client and
server processes weren't working for me.  (I was getting an "unknown user
xw message).  I think these do the same thing, and they work on the
elaines:

kill -9 `ps -u $USER | grep client | awk '{print$1}'`

and

kill -9 `ps -u $USER | grep server | awk '{print$1}'`

Good luck everyone,
Will
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+M5wI4uIcqiwjnrURAhh4AJ9HICkqBcTL6GXlLK03nDYAhMuV2gCgtcjM
O9ri9LRfvigK1sWCytg6eYo=
=PB/g
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!not-for-mail
From: "Neil Daswani" 
Newsgroups: su.class.cs244a
Subject: Problems with Test Scripts...
Date: Sun, 26 Jan 2003 00:56:23 -0800
Organization: Stanford University
Lines: 46
Distribution: su
Message-ID: 
Reply-To: "Neil Daswani" 
NNTP-Posting-Host: dn800cbf07.stanford.edu
X-Trace: news.Stanford.EDU 1043570858 4731 128.12.191.7 (26 Jan 2003 08:47:38 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4133.2400
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
Xref: shelby.stanford.edu su.class.cs244a:3990

Dear TAs,

I am having problems with the testing scripts.  When I run the following
command line: /usr/class/cs244a/bin/test_code.pl hw2a transport.c
it terminates in an error saying, "Fatal error:  Can't find expected file
/usr/class/cs244a/grading_script/hw2/TESTDATA.0!"

I have shown an excerpt of the output below.  It also generates a large
number of warnings due to problems with "our_dprintf"

-- Neil

Output:
<...large number of warnings excluded...>
transport.c:1191: warning: statement with no effect
transport.c:1192: warning: statement with no effect
transport.c: In function `sigint_handler':
transport.c:1338: warning: left-hand operand of comma expression has no
effect
transport.c: At top level:
transport.c:1151: warning: `exit_control_loop' defined but not used

Testing input file TESTDATA.0

Starting student server:
/afs/ir.stanford.edu/users/d/a/daswani/cs244a/hw2/grading_src/build/ser
ver  -p
/afs/ir.stanford.edu/users/d/a/daswani/cs244a/hw2/grading_src/build/.server_
port 2>&1 >
/afs/ir.stanford.edu/users/d/a/daswani/cs244a/hw2/grading_src/build/.server_
output &
Server started
connected to 171.64.15.17 at port 45968
client: TESTDATA.0
client: TESTDATA.0
client: TESTDATA.0
client: TESTDATA.0
client: TESTDATA.0
client: TESTDATA.0
Fatal error:  Can't find expected file
/usr/class/cs244a/grading_script/hw2/TESTDATA.0!
couldn't submit code for testing




.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: th_seq of ACK packets & retransmission of ACKs.
Date: Sun, 26 Jan 2003 01:43:33 -0800
Lines: 74
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: russell2.stanford.edu
X-Trace: news.Stanford.EDU 1043574279 5814 128.12.177.15 (26 Jan 2003 09:44:39 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3991


"Noh, Jeonghun"  wrote in message

> 1. In the PA#2 handout, the part of the ACK Packets says that if the ACK
bit
> in the flags field is set to 1, the ack_seq field contains the sequence
> number of the next byte of data the receiver expects.
>
> Does 'ack_seq' mean both th_ack and th_seq or only th_ack?
>
> We are not allowed to piggyback data on the ack packets, ACK has no
payload.
> That is, the th_seq field of the ACK has no meaning at all. Is it correct?

Yes, you are correct.  Because ACK packets are their own entity in your
implementation of TCP, the th_seq is unnecessary.

>
> 2. Like the example in the PA#2 handout, if we assume the last
> acknowledgment sent was 10 and a packet containing data with sequence
number
> 15 of length 5 is received,
>
> do we have to send ACK with the th_seq 10 or just suppress to produce ACKs
> until we receive a packet with sequence number 10 of length 5 and send
only
> one ACK?
>
> I got confused because we should send a duplicate ACK when we receive a
> duped data packet, just like a normal TCP.
>

Every time you receive a packet, send out an ACK for the next byte of data
you need.  It is up to you to figure out what the next piece of contiguous
data is but you should always send an ack for this sequence number.


> 3. About the th_seq of ACKs
> I seem to know th_ack of ACKs indicates the next byte of data the receiver
> expects. What about th_seq of ACKs? Will it be the next byte of data the
> receiver will send? Even though the receiver will send no data packets
> except ack packets, do we have to be precise in dealing with th_seq of
ACKs?
>

Na, th_seq of ACKS have no meaning in our implementation.

> My understanding is there are 3 kinds of ACKs, SYN-ACKs, FIN-ACKs, and
> ACKs(normal acks to data reception). I wonder how we should handle the
last
> case.
>

The last case??  You mean just normal ACKs?  Make sure you read the book
(chapter 4) on how TCP works.  But essentially normal ACKs are used to slide
the send window forward because the sender knows that the receive has the
data.

Hope this helps.

--Russ

> --
> *********************************
> Jeonghun Noh
> Dept. of Electrical Engineering
> Stanford University
> Tel : 1-650-497-6665
> 
> *********************************
>
>


.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: PA#2: sliding window buffers
Date: Sun, 26 Jan 2003 02:51:52 -0800
Lines: 37
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043578315 7755 171.64.15.69 (26 Jan 2003 10:51:55 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:3992

hi all!

a few questions regarding the sliding window algorithm and its
implementation in our STCP:

1. is it correct to say that a sender should keep the pipe/socket as full
as possible? (e.g. initially, sender fills up the pipe (and receiver
window); as soon as receiver's ACK comes back and receiver's window opens
up, sender sends more data to fill up the window again, assuming sender
has enough data to do so)

2. if receiver receives a packet with data in-order, can it directly pass
the data to application process, or should it buffer the data first in
receiver's buffer and pass to application at a later time (or, should the
receiver's buffer contain any in-order and ACKed data)?

3. in Friday review session, "mbufs" was mentioned to be possibly used for
implementing the sliding window buffer, is there any decent documentations
about its uses available?

finally, need some clarifications on "Network Termination" section of the
assignment description --

a. first bullet point: when our dummy client's application process calls
the child process to close, doesn't it mean that all data has already been
received by the application (i.e. NO outstanding data in pipe/socket, or
child's receiver buffer)? what "data" does requesting active end need to
flush in this case?

b. third bullet point: "passive end does not flush outstanding data"  (is
this referring to the data sent in pipe but has not been ACKed?), but just
"... terminates its end of the connection immediately" (so the sender will
NOT wait for its outstanding data (assuming there is) to be ACKed?)

thanks!
Tan

.

Path: shelby.stanford.edu!not-for-mail
From: "Noh, Jeonghun" 
Newsgroups: su.class.cs244a
Subject: fork code & buffer location
Date: Sun, 26 Jan 2003 02:56:36 -0800
Organization: Stanford. EE
Lines: 40
Distribution: su
Message-ID: 
NNTP-Posting-Host: ohnohoya.stanford.edu
X-Trace: news.Stanford.EDU 1043578715 7844 128.12.151.44 (26 Jan 2003 10:58:35 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:3993

1. After we call localsocketpair() in transport.c, we get two sockets having
the same process at both ends. For example, if we write(sd[0], buffer_write,
1), we can read(sd[0], buffer_read, 1). Is it correct?

Then, we fork a child process and discard two connections from four
connections(counting data_sd[2] and syn_sd[2]). At now, how can we guarantee
that the child process and the parent will communicate each other? For me,
it is likely to send data to both itself and the other process.

The last question. Before we fork(), we had 4 sockets in total, after we
fork(), we have 8 sockets in total. After discarding 4 sockets in order to
simulate pipes, do we end up having 4 sockets?


2. Buffers and the congestion window
Once the connection between each child process at the both ends has been
established, each application will write or read on the sockets which
connect application with the child processes(STCP) and the sockets will read
or write on the sockets(using transport_sock_io). Is it correct?

Would you correct my understanding about the location of the buffers and the
window? Here it is. Let's assume a server has data to send. It will write on
the local socket which connects app with STCP. So one buffer will be inside
this socket. STCP(a child process) has its own congestion windows and will
write it to the socket connecting it with the underlying network layer. So
there is another buffer in it. Is it right?

It is really confusing. Can you clarify the concept?


--
*********************************
Jeonghun Noh
Dept. of Electrical Engineering
Stanford University
Tel : 1-650-497-6665

*********************************


.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem with test script
Date: Sun, 26 Jan 2003 17:29:31 +0000 (UTC)
Lines: 27
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1043602171 16924 171.64.15.84 (26 Jan 2003 17:29:31 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3994


>When I try the test script on hw2a, I got this error:

>Testing input file TESTDATA.0

>Starting student server:
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/server 
> -p
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.server
>_port 2>&1 >
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.server
>_output &
>Server started
>connected to 171.64.15.104 at port 56696
>client: TESTDATA.0
>Fatal error:  Can't find expected file
>/usr/class/cs244a/grading_script/hw2/TESTDATA.0!
>couldn't submit code for testing

>Any idea what may be causing this?

I'm not sure--it works for me (and the file exists there), so it might be
a permission problem.  Things look okay based on the AFS permissions, but
I've chmoded the files to 644 in case something weird was going on there
(although I can't imagine that should have been an issue).  Can you cat
the file in your shell?  If so, can you try the test again?  Thanks.

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: Problem with test script
Date: Sun, 26 Jan 2003 11:16:31 -0800
Lines: 38
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043608572 19458 128.12.195.69 (26 Jan 2003 19:16:12 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3995

Yes, it works now. Thanks.

"Matthew Jonathan Holliman"  wrote in message

>
> >When I try the test script on hw2a, I got this error:
>
> >Testing input file TESTDATA.0
>
> >Starting student server:
>
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/server
> > -p
>
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.serve
r
> >_port 2>&1 >
>
>/afs/ir.stanford.edu/users/m/a/manyului/cs244a/hw2/grading_src/build/.serve
r
> >_output &
> >Server started
> >connected to 171.64.15.104 at port 56696
> >client: TESTDATA.0
> >Fatal error:  Can't find expected file
> >/usr/class/cs244a/grading_script/hw2/TESTDATA.0!
> >couldn't submit code for testing
>
> >Any idea what may be causing this?
>
> I'm not sure--it works for me (and the file exists there), so it might be
> a permission problem.  Things look okay based on the AFS permissions, but
> I've chmoded the files to 644 in case something weird was going on there
> (although I can't imagine that should have been an issue).  Can you cat
> the file in your shell?  If so, can you try the test again?  Thanks.
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Test case 1.D and 1.F
Date: Sun, 26 Jan 2003 11:32:28 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043609529 19863 128.12.195.69 (26 Jan 2003 19:32:09 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:3996

I ran the test script and failed test case 1.F, but I was not clear what the
problem is, since I passed a seemingly similar test caes 1.D:

1.D
Checks that Tx doesn't overflow receiver window.

1.F
Checks transport layer enforces correct receiver window.
Transport layer receiver buffered more than 3072 bytes of outstanding data

Since I do not have a buffer for the receiver (payload of every received
packet is dumped into the localpipe to the app directly), does it mean I
should never let more than 3072 bytes of data sit in the localpipe to the
app?

Thanks.

-myl


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: debugging and honor code
Date: Sun, 26 Jan 2003 20:01:21 +0000 (UTC)
Organization: Stanford University
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic22.stanford.edu
X-Trace: news.Stanford.EDU 1043611281 20431 171.64.15.57 (26 Jan 2003 20:01:21 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:3997


My code doesn't pass test 1.G. Is it ok (honor code-wise) to have the 
transport layer dump all the traffic to a file during the test run 
so I can see what the problem is? (This was asked in last years
new group but I could not see a yes/or answer).
.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test case 1.D and 1.F
Date: Sun, 26 Jan 2003 20:01:52 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1043611312 20487 171.64.15.84 (26 Jan 2003 20:01:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3998


>Since I do not have a buffer for the receiver (payload of every received
>packet is dumped into the localpipe to the app directly), does it mean I
>should never let more than 3072 bytes of data sit in the localpipe to the
>app?

No, you're fine; that test case was too stringent in the case where data
arrives more quickly than the application reads it.  (I hadn't seen this
happen before).  I've relaxed the checks now.
.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: sending SYN blocks
Date: Sun, 26 Jan 2003 20:08:06 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1043611686 20612 171.64.15.84 (26 Jan 2003 20:08:06 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:3999


>I know you have to use FD_SET before you call select *each* time. Also
>you have to make sure that use use FD_ZERO before you initialize the
>struct every time. Lastly check that maxfs (the first arg to select)
>is the right value (taking the MAX of all you fds). Hope that helps...

Just to clarify, I believe you mean MAX+1. :-)

.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: How to TCP Source Port?
Date: Sun, 26 Jan 2003 20:17:15 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1043612235 20855 171.64.15.84 (26 Jan 2003 20:17:15 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4000


>Should we, for example, just make up some source port number?  Should
>this source port number be selected so that it is distinct from any
>other TCP port that is being used on the client?  

Neither is actually used anywhere--as you point out, since the process
model implicitly takes care of port demultiplexing for you, both are
irrelevant and can be completely ignored.

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: assigmnent 2 questions
Date: Sun, 26 Jan 2003 20:25:58 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 23
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1043612758 21048 171.64.15.112 (26 Jan 2003 20:25:58 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4001

Please note this correction to my earlier post:

In the scenario below, if the timeout timer pops for bytes
[0,999] then all bytes from 0 onward should be resent.

This is the behavior the grading scripts expect at present.
Also, this behavior should be easier to implement.

SteveJ

>>
>>And to extend this scenario, let's say that after sending out those 400
>>new bytes, we don't hear an ACK by the time the interrupt timeout for
>>bytes [0,999] comes around. (But NOT the timeout for bytes [1000,1399].)
>>
>>Are we supposed to retransmit [0,999] or [0,1399] at this point?
>
>Assuming that the retransmit timer has popped for [0,999] but
>the retransmit timer has not popped for [1000,1399], only
>[0,999] should be resent.
>
>>
>>The definition of "Go back N" suggests the latter ...
.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: PA#2: sliding window buffers
Date: Sun, 26 Jan 2003 12:41:36 -0800
Lines: 58
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043613698 21339 171.64.15.74 (26 Jan 2003 20:41:38 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4002


> hi all!
>
> a few questions regarding the sliding window algorithm and its
> implementation in our STCP:
>
> 1. is it correct to say that a sender should keep the pipe/socket as full
> as possible? (e.g. initially, sender fills up the pipe (and receiver
> window); as soon as receiver's ACK comes back and receiver's window opens
> up, sender sends more data to fill up the window again, assuming sender
> has enough data to do so)

 Yes

>
> 2. if receiver receives a packet with data in-order, can it directly pass
> the data to application process, or should it buffer the data first in
> receiver's buffer and pass to application at a later time (or, should the
> receiver's buffer contain any in-order and ACKed data)?
>

 As long as you preserve the semantics of in order data arrival, keep track of
 the last byte read from the transport layer (to handle lost acks) you should
 be OK.  I think is a bad idea to plan on sending the data directly to the
 application without consulting a recieve buffer because, even if the data read
 is in-order you could have missed a previous chunk ... so you are better of
 consulting your buffer (though you do not need to do an explicit data copy)

> 3. in Friday review session, "mbufs" was mentioned to be possibly used for
> implementing the sliding window buffer, is there any decent documentations
> about its uses available?

 I don't know  :-/

>
> finally, need some clarifications on "Network Termination" section of the
> assignment description --
>
> a. first bullet point: when our dummy client's application process calls
> the child process to close, doesn't it mean that all data has already been
> received by the application (i.e. NO outstanding data in pipe/socket, or
> child's receiver buffer)? what "data" does requesting active end need to
> flush in this case?

 There still may be data in your send buffer (unacked, or waiting for the
 window to open)  which must be send to the client.  You want to try and make
 sure that all sent data has been acked before you shut down.

>
> b. third bullet point: "passive end does not flush outstanding data"  (is
> this referring to the data sent in pipe but has not been ACKed?), but just
> "... terminates its end of the connection immediately" (so the sender will
> NOT wait for its outstanding data (assuming there is) to be ACKed?)

 correct.

 /mc

.

Path: shelby.stanford.edu!saga12.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Re: PA#2: sliding window buffers
Date: Sun, 26 Jan 2003 13:05:03 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga12.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043615104 21895 171.64.15.142 (26 Jan 2003 21:05:04 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4003

> > 2. if receiver receives a packet with data in-order, can it directly pass
> > the data to application process, or should it buffer the data first in
> > receiver's buffer and pass to application at a later time (or, should the
> > receiver's buffer contain any in-order and ACKed data)?
> >
>
>  As long as you preserve the semantics of in order data arrival, keep track of
>  the last byte read from the transport layer (to handle lost acks) you should
>  be OK.  I think is a bad idea to plan on sending the data directly to the
>  application without consulting a recieve buffer because, even if the data read
>  is in-order you could have missed a previous chunk ... so you are better of
>  consulting your buffer (though you do not need to do an explicit data copy)

How do we send data to the application? The assignment says we should
buffer data sent to the app -- e.g., if the app asks for 512 bytes, and we
receive only 256 now, we should buffer it in the transport until the other
256 are ready (or block forever, I guess).

It looks like we can just write data to the data_sd[i] socket, but how do
we know how much to write at each time?

Jonathan

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: fork code & buffer location
Date: Sun, 26 Jan 2003 13:08:12 -0800
Lines: 57
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043615293 21934 171.64.15.74 (26 Jan 2003 21:08:13 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4004


> 1. After we call localsocketpair() in transport.c, we get two sockets having
> the same process at both ends. For example, if we write(sd[0], buffer_write,
> 1), we can read(sd[0], buffer_read, 1). Is it correct?

 Yup, though you'll probably want to read more than a single byte.

>
> Then, we fork a child process and discard two connections from four
> connections(counting data_sd[2] and syn_sd[2]). At now, how can we guarantee
> that the child process and the parent will communicate each other? For me,
> it is likely to send data to both itself and the other process.
>
> The last question. Before we fork(), we had 4 sockets in total, after we
> fork(), we have 8 sockets in total. After discarding 4 sockets in order to
> simulate pipes, do we end up having 4 sockets?
>

 I think I am confused as to your question.  Forking merely copies the parents
 file descriptor table. Initially there are 4 fd's (2 for each socket pair).
 After the fork there are 8 ... The parent closes 2 and the child closes 2 so
 there are a total of 4 open file descriptor, 2 in the parent and two in the
 child.

 ... errr was that not what you were asking?

>
> 2. Buffers and the congestion window
> Once the connection between each child process at the both ends has been
> established, each application will write or read on the sockets which
> connect application with the child processes(STCP) and the sockets will read
> or write on the sockets(using transport_sock_io). Is it correct?

 Yes... the application communicates with the transport layer via the sockets
 connecting the parent/child processes and the transport layer communicates
 with the remote connection throough network_recv/network_send (defined in
 network.c)

>
> Would you correct my understanding about the location of the buffers and the
> window? Here it is. Let's assume a server has data to send. It will write on
> the local socket which connects app with STCP. So one buffer will be inside
> this socket. STCP(a child process) has its own congestion windows and will
> write it to the socket connecting it with the underlying network layer. So
> there is another buffer in it. Is it right?


 server writes data to fd of child process which is the transport subsystem.
 Transport subsystem reads from fd, handles the data however it wants and
 forwards it on to the remote connection.  So when the server writes to the fd,
 the OS (not your program) will buffer the data until the child process (STCP)
 reads the data.  Then your buffering comes into play, bieng sure to buffer the
 data in case some gets lost during transmission.  Then you will send the data
 to the remote connection ..

 /mc

.

Path: shelby.stanford.edu!epic11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: network_send
Date: Sun, 26 Jan 2003 14:20:03 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043619604 23743 171.64.15.44 (26 Jan 2003 22:20:04 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4005

What should we do if network_send fails? What could cause it to fail? I
ask, because I'm getting assert fails during the test script run. However,
this doesn't occur every time I send something?

thanks,

Rhea

.

Path: shelby.stanford.edu!epic11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: peeraddr
Date: Sun, 26 Jan 2003 14:27:02 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043620023 23942 171.64.15.44 (26 Jan 2003 22:27:03 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4006

Also, should we be sending/accepting the peeraddr encapsulated in a
packet or stand-alone?

Rhea

.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: fork code & buffer location
Date: Sun, 26 Jan 2003 22:44:08 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1043621048 25277 171.64.15.84 (26 Jan 2003 22:44:08 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4007

In addition to Martin's answer, you might also want to look over the
slides from Friday's discussion section (they're posted on the webpage),
or you can review the video on the SITN website (also linked on the main
course homepage) if you haven't done so already.
.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: Test case 1.D and 1.F
Date: Sun, 26 Jan 2003 15:05:32 -0800
Lines: 19
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043622311 25752 128.12.195.69 (26 Jan 2003 23:05:11 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4008

My code still fails test case 1.F. I have added check in a locally copied
mysocket.c to see that there are times when more than 3072 bytes sit in the
localpipe. 1.F is the only test case my code failed in.

Please let me know how this could be resolved. Thanks.

"Matthew Jonathan Holliman"  wrote in message

>
> >Since I do not have a buffer for the receiver (payload of every received
> >packet is dumped into the localpipe to the app directly), does it mean I
> >should never let more than 3072 bytes of data sit in the localpipe to the
> >app?
>
> No, you're fine; that test case was too stringent in the case where data
> arrives more quickly than the application reads it.  (I hadn't seen this
> happen before).  I've relaxed the checks now.


.

Path: shelby.stanford.edu!epic11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: network_send
Date: Sun, 26 Jan 2003 16:10:57 -0800
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: epic11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043626258 27461 171.64.15.44 (27 Jan 2003 00:10:58 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4009

On Sun, 26 Jan 2003, Rhea Sherman Mortam wrote:

> What should we do if network_send fails? What could cause it to fail? I
> ask, because I'm getting assert fails during the test script run. However,
> this doesn't occur every time I send something?
>
> thanks,
>
> Rhea
>
>

never mind, network_send fails if the socket is closed, sorry bout that.

Rhea

.

Path: shelby.stanford.edu!epic11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: network_send
Date: Sun, 26 Jan 2003 16:21:25 -0800
Lines: 26
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: epic11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043626888 27755 171.64.15.44 (27 Jan 2003 00:21:28 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4010

On Sun, 26 Jan 2003, Rhea Sherman Mortam wrote:

> On Sun, 26 Jan 2003, Rhea Sherman Mortam wrote:
>
> > What should we do if network_send fails? What could cause it to fail? I
> > ask, because I'm getting assert fails during the test script run. However,
> > this doesn't occur every time I send something?
> >
> > thanks,
> >
> > Rhea
> >
> >
>
> never mind, network_send fails if the socket is closed, sorry bout that.
>
> Rhea
>
>

but it also fails when write return an error with: Invalid Argument (from
perror)? What does that mean? What could cause network_send to fails
besides these to cases?

thanks

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: peeraddr
Date: Sun, 26 Jan 2003 16:47:45 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043628467 28314 171.64.15.74 (27 Jan 2003 00:47:47 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4011


> Also, should we be sending/accepting the peeraddr encapsulated in a
> packet or stand-alone?
>
> Rhea

  Unless handeling of the peeraddr has changed since last year you should not
  be sending it over the socket, but grabbing it via network_peer_name()
  (network.c) and sending it from the child to the parent througnh syn_sd in
  which case the best way to pass it is as raw data.

  /mc

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: network_send
Date: Sun, 26 Jan 2003 16:53:38 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043628819 28484 171.64.15.74 (27 Jan 2003 00:53:39 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4012

>
> but it also fails when write return an error with: Invalid Argument (from
> perror)? What does that mean? What could cause network_send to fails
> besides these to cases?

 send_msg could fail for a number of reasons.  network_send uses sendmsg()
 (man 2 sendmsg) so if any of the fields of the msghdr are bad, send_msg will
 fail. This could include the file descriptor, the address, the message buffer
 etc.

 /mc

.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test case 1.D and 1.F
Date: Mon, 27 Jan 2003 01:08:19 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1043629699 28831 171.64.15.84 (27 Jan 2003 01:08:19 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4013

>My code still fails test case 1.F. I have added check in a locally copied
>mysocket.c to see that there are times when more than 3072 bytes sit in the
>localpipe. 1.F is the only test case my code failed in.

Please send me the code and I'll take a look at it.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: seq no.s and SYN/SYN ACK packets
Date: Sun, 26 Jan 2003 17:10:40 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine31.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043629842 28941 171.64.15.106 (27 Jan 2003 01:10:42 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4014

hi,
if syn sends a seq no. of x
then in the SYNACK packet what should be the ack number : x or x+1?

i.e does the syn consume a sequence number like in TCP?

thanks,
Sandhya

.

Path: shelby.stanford.edu!epic11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: peeraddr
Date: Sun, 26 Jan 2003 17:12:04 -0800
Lines: 33
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: epic11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043629925 29020 171.64.15.44 (27 Jan 2003 01:12:05 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4015

On Sun, 26 Jan 2003, Martin Casado wrote:

>
> > Also, should we be sending/accepting the peeraddr encapsulated in a
> > packet or stand-alone?
> >
> > Rhea
>
>   Unless handeling of the peeraddr has changed since last year you should not
>   be sending it over the socket, but grabbing it via network_peer_name()
>   (network.c) and sending it from the child to the parent througnh syn_sd in
>   which case the best way to pass it is as raw data.
>
>   /mc
>
>

but doesn't the client have to compute the network_peer_name() and sent it
to the server. Then the server passes peeraddr to its parent? How does the
server know the client's peeraddr if you don't do it this way?

myaccept:
/* should be called by the passive end to accept a connection.
   simply sets up the transport layer appropriately,
   returns a NEW socket descriptor which should be used
   to make any more reads/writes, i.e. sockfd should not be used
   after this call. On return, addr contains the address of the peer
   */

The 'peer' means the active end, or client, right?

Rhea

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: seq no.s and SYN/SYN ACK packets
Date: Sun, 26 Jan 2003 17:56:53 -0800
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043632614 101 171.64.15.74 (27 Jan 2003 01:56:54 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4016


> hi,
> if syn sends a seq no. of x
> then in the SYNACK packet what should be the ack number : x or x+1?
>
> i.e does the syn consume a sequence number like in TCP?

  You reply with your own sequence number and ack with theirs + 1

  /mc

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: peeraddr
Date: Sun, 26 Jan 2003 18:04:37 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043633080 402 171.64.15.74 (27 Jan 2003 02:04:40 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4017


> On Sun, 26 Jan 2003, Martin Casado wrote:
>
> >
> > > Also, should we be sending/accepting the peeraddr encapsulated in a
> > > packet or stand-alone?
> > >
> > > Rhea
> >
> >   Unless handeling of the peeraddr has changed since last year you should not
> >   be sending it over the socket, but grabbing it via network_peer_name()
> >   (network.c) and sending it from the child to the parent througnh syn_sd in
> >   which case the best way to pass it is as raw data.
> >
> >   /mc
> >
> >
>
> but doesn't the client have to compute the network_peer_name() and sent it
> to the server. Then the server passes peeraddr to its parent? How does the
> server know the client's peeraddr if you don't do it this way?

  Since STCP simply sits on top of UDP this is already done by the IP stack and
  is saved in in member fromaddr of struct net_context_t (network.c).  If you
  look at network_recv() you'll see that fromaddr gets filled on the call to
  recvfrom(2) ... so regardless of what you receive (the initial SYN packet for
  example), fromaddr is set ... and can be accessed via network_peer_name().

  /mc


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: Re: seq no.s and SYN/SYN ACK packets
Date: Sun, 26 Jan 2003 18:15:55 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine31.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043633757 718 171.64.15.106 (27 Jan 2003 02:15:57 GMT)
X-Complaints-To: 
To: Martin Casado 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4018

ok,
but suppose Side A sends the synack with seq no. y
and side A wants to send data
should the data start from seq. no y+1 or y?

thanks,
Sandhya

On Sun, 26 Jan 2003, Martin Casado wrote:

>
> > hi,
> > if syn sends a seq no. of x
> > then in the SYNACK packet what should be the ack number : x or x+1?
> >
> > i.e does the syn consume a sequence number like in TCP?
>
>   You reply with your own sequence number and ack with theirs + 1
>
>   /mc
>
>

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: seq no.s and SYN/SYN ACK packets
Date: Sun, 26 Jan 2003 18:41:46 -0800
Lines: 22
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043635308 1586 171.64.15.74 (27 Jan 2003 02:41:48 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4019


> ok,
> but suppose Side A sends the synack with seq no. y
> and side A wants to send data
> should the data start from seq. no y+1 or y?
>
> thanks,
> Sandhya

  The passive and active sides of the connection handle the sequence numbering
  the same .. aka you do not do anything special in the case of the synack that
  you wouldn't do with a syn.

  If your question is, "what is the sequence number of the first data packet
  sent in a connection", I'm not sure if this is explicitly answered in the
  problem description.  It may not matter if you preserve the correct
  semantics... fwiw, my solution used initial sequence + 1.

  cheers
  /mc


.

Path: shelby.stanford.edu!not-for-mail
From: Alexander Phillip Fontana 
Newsgroups: su.class.cs244a
Subject: handling network errors
Date: Sun, 26 Jan 2003 22:40:10 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: raptor14.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043649610 8354 171.64.12.175 (27 Jan 2003 06:40:10 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; Linux 2.4.9-31 i686)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4020

It seems that an earlier question about network failures went unanswered
in the message's thread.  Namely, how should we handle legitimate
network-layer failures? I think the ideal is that we should be able to
force the mysock layer functions to return -1 and set the proper errno
value, but I don't see how to communicate this across processes?

Thanks,
Alex
.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: TEST case 1.B
Date: Sun, 26 Jan 2003 22:41:23 -0800
Lines: 60
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043649684 8372 171.64.15.69 (27 Jan 2003 06:41:24 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4021

hi all!

my program only failes test 1.B now with the following msg:
Results:  NOT OK

No 'rcvd' created!  Client output:

from the log files (see below), it seems that the sequence and ACK numbers
in my packet's TCP header are messed up.

however, I did use "ntoh()" after receiving a packet, and "hton()" before
sending a packet out. any clue what else may be causing the mis-matching
numbers in the log?

thanks!
Tan

*********************************************
SERVER LOG ---

CWND: 3072; ERTT: 250
log: network_recv: a SYN packet with seq=51
log: network_send: a SYN-ACK packet with seq=167 and ack=52 and timestamp=4266260178
CWND: 3072; ERTT: 250
log: network_recv: a DATA packet with seq=52, len=12 and timestamp=4266260180
log: network_send: a DATA-ACK packet with ack=64
log: network_send: a DATA packet with seq=169, len=536
log: network_send: a DATA packet with seq=705, len=536
log: network_send: a DATA packet with seq=1241, len=536
log: network_send: a DATA packet with seq=1777, len=536
log: network_send: a DATA packet with seq=2313, len=536
log: network_send: a DATA packet with seq=2849, len=392
CWND: 0; ERTT: 250
log: network_recv: a DATA-ACK packet with ack=705
....

CLIENT LOG ---
log: network_send: a SYN packet with seq=105
log: network_recv: a SYN-ACK packet with seq=138 and ack=106 and timestamp=4266256470
log: network_send: a DATA packet with seq=106, len=12
log: network_recv: a DATA-ACK packet with ack=118
log: network_recv: a DATA packet with seq=140, len=22 and timestamp=4266256474
log: network_send: a DATA-ACK packet with ack=162
log: network_recv: a DATA packet with seq=162, len=536 and timestamp=4266256474
log: network_send: a DATA-ACK packet with ack=698
log: network_recv: a DATA packet with seq=698, len=536 and timestamp=4266256474
log: network_send: a DATA-ACK packet with ack=1234
log: network_recv: a DATA packet with seq=1234, len=536 and timestamp=4266256474
log: network_send: a DATA-ACK packet with ack=1770
log: network_recv: a DATA packet with seq=1770, len=536 and timestamp=4266256475
log: network_send: a DATA-ACK packet with ack=2306
log: network_recv: a DATA packet with seq=2306, len=536 and timestamp=4266256475
log: network_send: a DATA-ACK packet with ack=2842
log: network_recv: a DATA packet with seq=2842, len=370 and timestamp=4266256475
log: network_send: a DATA-ACK packet with ack=3212
log: network_recv: a DATA packet with seq=3212, len=536 and timestamp=4266256478
log: network_send: a DATA-ACK packet with ack=3748
....


.

Path: shelby.stanford.edu!saga9.Stanford.EDU!priyank9
From: Priyank Kshitij Patel 
Newsgroups: su.class.cs244a
Subject: what does cksum in 1.C test?
Date: Mon, 27 Jan 2003 02:04:15 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043661857 14409 171.64.15.139 (27 Jan 2003 10:04:17 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4022

hi,

My code fails test 1.C saying that the checksum for
/usr/class/cs244a/grading_script/hw2/TESTDATA.0 is different from what is
expected.

However, I ran the program normally and the client downloaded all the
110230 bytes of the file TESTDATA.0 correctly to the file named rcvd.

Also a
"diff rcvd /usr/..../TESTDATA.0" indicates that both the files are exactly
similar.

Can you give an indication on where i could be going wrong?

Priyank

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: handling network errors
Date: Mon, 27 Jan 2003 04:48:28 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043671710 18660 171.64.15.74 (27 Jan 2003 12:48:30 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4023


 I don't see this explicitly covered in the homework description.  The
 socket api exposed to the application (in mysock) simply reads/writes
 to  the child process through the fd returned from transport_init, so
 if this is closed, reading/writing to it will produce an error.

 You should, on error, shut down the transport system appropriately and
 produce a meaningful error message.  I don't think it is necessary to set
 errno however.

 /mc


> It seems that an earlier question about network failures went unanswered
> in the message's thread.  Namely, how should we handle legitimate
> network-layer failures? I think the ideal is that we should be able to
> force the mysock layer functions to return -1 and set the proper errno
> value, but I don't see how to communicate this across processes?
>
> Thanks,
> Alex
>

.

Path: shelby.stanford.edu!not-for-mail
From: Fritz Budiyanto 
Newsgroups: su.class.cs244a
Subject: Fast Retransmit
Date: Mon, 27 Jan 2003 17:22:44 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine38.stanford.edu
X-Trace: news.Stanford.EDU 1043688164 25307 171.64.15.113 (27 Jan 2003 17:22:44 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4024

Hi,

Shall we implement Van Jacobson fast retransmission ? ie. dont have to
wait for timeout in case of double ack ?

thanks,
Fritz
.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: what does cksum in 1.C test?
Date: Mon, 27 Jan 2003 18:49:58 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1043693398 28260 171.64.15.109 (27 Jan 2003 18:49:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4025


>My code fails test 1.C saying that the checksum for
>/usr/class/cs244a/grading_script/hw2/TESTDATA.0 is different from what is
>expected.

>However, I ran the program normally and the client downloaded all the
>110230 bytes of the file TESTDATA.0 correctly to the file named rcvd.

>Also a
>"diff rcvd /usr/..../TESTDATA.0" indicates that both the files are exactly
>similar.

Test 1.C tests against the reference STCP server, so the fact that your client
works against your server doesn't mean you'll pass this test.  It checks
that the downloaded file size and the checksum (output of the cksum command)
are both correct for your client against the reference server.
.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: Re: what does cksum in 1.C test?
Date: Mon, 27 Jan 2003 11:45:51 -0800
Lines: 30
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga17.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043696726 389 171.64.15.147 (27 Jan 2003 19:45:26 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4026

Matthew Jonathan Holliman wrote:
>>My code fails test 1.C saying that the checksum for
>>/usr/class/cs244a/grading_script/hw2/TESTDATA.0 is different from what is
>>expected.
> 
> 
>>However, I ran the program normally and the client downloaded all the
>>110230 bytes of the file TESTDATA.0 correctly to the file named rcvd.
> 
> 
>>Also a
>>"diff rcvd /usr/..../TESTDATA.0" indicates that both the files are exactly
>>similar.
> 
> 
> Test 1.C tests against the reference STCP server, so the fact that your client
> works against your server doesn't mean you'll pass this test.  It checks
> that the downloaded file size and the checksum (output of the cksum command)
> are both correct for your client against the reference server.

I am having the same issue.  However, when I run the test manually I get 
the correct cksum.  Using both
server.log <--> client
and
client.log <--> server

Could someone please confirm a successfull run for this test.

Thanks

.

Path: shelby.stanford.edu!saga7.Stanford.EDU!priyank9
From: Priyank Kshitij Patel 
Newsgroups: su.class.cs244a
Subject: Re: what does cksum in 1.C test?
Date: Mon, 27 Jan 2003 13:27:39 -0800
Lines: 37
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: saga7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043702861 3827 171.64.15.137 (27 Jan 2003 21:27:41 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4027

> >
> >>Also a
> >>"diff rcvd /usr/..../TESTDATA.0" indicates that both the files are exactly
> >>similar.
> >
> >
> > Test 1.C tests against the reference STCP server, so the fact that your client
> > works against your server doesn't mean you'll pass this test.  It checks
> > that the downloaded file size and the checksum (output of the cksum command)
> > are both correct for your client against the reference server.
>
> I am having the same issue.  However, when I run the test manually I get
> the correct cksum.  Using both
> server.log <--> client
> and
> client.log <--> server
>
> Could someone please confirm a successfull run for this test.
>
> Thanks
>
I too tested cksum o/p for the rcvd and the original TESTDATA.0 file and
they both came out to be the same.  However the grading script says

Checksum differs for file /usr/class/cs244a/grading_script/hw2/TESTDATA.0!
(Your cksum: 427134730, expected 1705403052).
Client output:
server: TESTDATA.0,110230,Ok

whereas the command cksum give me
saga7:~/244> cksum rcvd /usr/class/cs244a/grading_script/hw2/TESTDATA.0
1705403052 110230 rcvd
1705403052 110230 /usr/class/cs244a/grading_script/hw2/TESTDATA.0

nebody else with the same problem?
Priyank

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Fast Retransmit
Date: Mon, 27 Jan 2003 21:29:06 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043702946 3857 171.64.15.74 (27 Jan 2003 21:29:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4028

Implementing Van Jacobson fast retransmission is not a requirement.

I would be concerned about how it would interact with the grading
scripts.  Other TAs, any opinions?

SteveJ

In article 
Fritz Budiyanto   wrote:
>Hi,
>
>Shall we implement Van Jacobson fast retransmission ? ie. dont have to
>wait for timeout in case of double ack ?
>
>thanks,
>Fritz


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: TEST case 1.B
Date: Mon, 27 Jan 2003 21:34:04 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 41
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043703244 4054 171.64.15.74 (27 Jan 2003 21:34:04 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4029

In article 
Tan Gao (weiwei)  wrote:
>hi all!
>
>my program only failes test 1.B now with the following msg:
>Results:  NOT OK
>
>No 'rcvd' created!  Client output:
>
>from the log files (see below), it seems that the sequence and ACK numbers
>in my packet's TCP header are messed up.
>
>however, I did use "ntoh()" after receiving a packet, and "hton()" before
>sending a packet out. any clue what else may be causing the mis-matching
>numbers in the log?

Sounds like a bug in your code.

ntoh() and hton() will not affect the problem if you are developing
in the Sparc environment.  I believe both Sparc and network byte
order are big endian.

Bring your code by TA office hours if you haven't been able to
sort this problem out.

SteveJ

>
>thanks!
>Tan
>
>*********************************************
>SERVER LOG ---
>
>CWND: 3072; ERTT: 250
>log: network_recv: a SYN packet with seq=51
>log: network_send: a SYN-ACK packet with seq=167 and ack=52 and timestamp=4266260178
>CWND: 3072; ERTT: 250
>log: network_recv: a DATA packet with seq=52, len=12 and timestamp=4266260180
>log: network_send: a DATA-ACK packet with ack=64
[ . . . ]
.

Path: shelby.stanford.edu!elaine2.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Fast Retransmit
Date: Mon, 27 Jan 2003 22:22:46 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine2.stanford.edu
X-Trace: news.Stanford.EDU 1043706166 5503 171.64.15.67 (27 Jan 2003 22:22:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4030


>Implementing Van Jacobson fast retransmission is not a requirement.

More than that, you shouldn't do it; the timeouts are difficult enough
to try and grade as it is!

.

Path: shelby.stanford.edu!elaine2.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: what does cksum in 1.C test?
Date: Mon, 27 Jan 2003 22:35:23 +0000 (UTC)
Lines: 25
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine2.stanford.edu
X-Trace: news.Stanford.EDU 1043706923 5866 171.64.15.67 (27 Jan 2003 22:35:23 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4031


>I am having the same issue.  However, when I run the test manually I get 
>the correct cksum.  Using both
>server.log <--> client
>and
>client.log <--> server

>Could someone please confirm a successfull run for this test.

It works for me when I test my solution for the class from a couple of
years ago.  Other people have mentioned that they pass this test case
on the newsgroup also.

server.log and client.log are built using *your* transport.c, so the fact
that they work against your server/client doesn't mean much, except
that your implementation is compatible with itself.  (There's nothing
magic about these applications--they're the regular server/client using
your transport layer, modified also to record packet logs for grading
purposes, as one might guess from the names).

Test 1.C tests whether your implementation is compatible with the reference
solution, which implements STCP per the assignment specification.  (You can't
test this manually, because the reference functionality is embedded in the
grading executable).

.

Path: shelby.stanford.edu!elaine2.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: HW#2 memory management clarification
Date: Mon, 27 Jan 2003 22:59:10 +0000 (UTC)
Lines: 78
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine2.stanford.edu
X-Trace: news.Stanford.EDU 1043708350 6660 171.64.15.67 (27 Jan 2003 22:59:10 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4032

Hi--
I just wanted to clarify about the memory management options in the
assignment, mostly for part (b).  I suggested that if you're motivated
(and you should probably be a decent coder if you decide to try this),
I think you'll get more out of the assignment by trying to follow what
a "real" TCP stack would do, i.e. by avoiding memory copies where possible.
I emphasize again that this is *completely* optional; we will not take
off points if you copy buffers, and we won't give you extra points for
avoiding copies!  Avoiding extra copies will make the assignment harder
than simply copying memory, but I think it will give you more of a flavour
of what a real implementation goes through.  (Most go to great lengths to
avoid copying packets unnecessarily, and in many systems there's only a
single copy from the socket layer to the application... Linux even adds
support for avoiding this final copy too in recent versions, leading to
a zero-copy protocol stack).

So, if you haven't decided to ignore this...

There was a question on here about what I meant by "mbufs," as I mentioned
these only in passing; the book describes the basic idea, although it
doesn't label them as such (the name comes from the BSD socket stack,
I think).  Chapter 1, and possibly some bits of Chapter 3 or 4, discusses
network stack implementation.  The basic idea is to copy/split messages
by maintaining an extra level of indirection; you would have a small MsgHdr
structure (I think this is what the book calls it), pointing to the actual
data and length.  As data gets passed up the stack, the packet itself is
not copied, but instead headers can be prepended/stripped without touching
the packet data itself.  In your case, incoming packets come in out of
order, so you could maintain a separate data structure describing
arriving packets and their sequence numbers/lengths, so you could
reassemble them in the right order with only a single copy up to the app
(when you do your final write()).
 
I also received another question or two by e-mail, which I'm answering here
in case anyone else is interested in this.

>You mention in the review, in the pedantic section, its best for the
>program to minimize memory read/write.
>What is mimimum write?
>
>Is it:
>1 recv() -> 1 write to your buffer
>2 store that buffer to stream buffer (or socket receive buffer) -> another
>write
>3 write to application buffer (user space) -> another write, so its total
>3 write?
>
>we could minimize 1 & 2, into 1 write only. And I've looked at mbuf
>implementation on BSD, it has m_devget and m_devpull, which getting the
>whole frame from the device driver and store it into the mbuf (and off
>course allocating the right mbuf). I guess it has a mechanism to read the
>packet from device driver without having a contiguous memory. In our case
>we need a contiguous memory for recv(), and we dont know how big is the
>packet we will get from recv()?
>
>How many write is considered minimum?

If you think about how a real TCP/IP implementation works, the Ethernet
driver would probably arrange a DMA of the packet into memory somewhere;
no copy yet.  From there, it gets passed up the stack (to IP, and TCP)
without any copies, by using the MsgHdr type idea from the book; byte
stream reassembly probably happens by manipulating these same packet header
structures (e.g. maintaining a linked list of incoming packets).  At
the final step, to pass the data to the application, most systems copy
the data (i.e. one copy), although there's been some work on zero-copy
sockets (e.g. by page remapping) to accelerate Gigabit-Ethernet.

In our case, we don't have DMA (obviously), so the initial recv() acts
as a replacement for this, placing the packet somewhere in memory--we
can't place it in order, because of reordering/packet loss.  The
final write() to the app corresponds to the final copy of a normal TCP/IP
implementation, and is required.  So I think if you just recv() into a
set of buffers (of max STCP packet length each), and then write() to the
app from those same buffers, that's the best you can do in our framework,
and mimics what the TCP stack would go through.

Whatever you decide, have fun!

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: test 1.I
Date: Mon, 27 Jan 2003 23:01:30 +0000 (UTC)
Organization: Stanford University
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic26.stanford.edu
X-Trace: news.Stanford.EDU 1043708490 6768 171.64.15.50 (27 Jan 2003 23:01:30 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4033


This test is about FIN-ACKS for FIN. I have started to implement some of
the retransmission stuff. So depending on various things I may send more than
one FIN packet. But I will only get one FINACK back. I have a feeling this is
causing me to intermittently fail 1.I as there will be some unmatched FIN
packets in the stream if I have has to retransmit. Happily I have frozen a 
transport.c which has no retransmission stuff and this seems to pass all the
HW2a tests on every submitted run. 

So my question is can a solution for 2b fail the 2a script for the above reason?

If so remember to freeze a 2a solution.
.

Path: shelby.stanford.edu!elaine2.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test 1.I
Date: Mon, 27 Jan 2003 23:09:51 +0000 (UTC)
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine2.stanford.edu
X-Trace: news.Stanford.EDU 1043708991 6992 171.64.15.67 (27 Jan 2003 23:09:51 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4034


>This test is about FIN-ACKS for FIN. I have started to implement some of
>the retransmission stuff. So depending on various things I may send more than
>one FIN packet. But I will only get one FINACK back. I have a feeling this is
>causing me to intermittently fail 1.I as there will be some unmatched FIN
>packets in the stream if I have has to retransmit. Happily I have frozen a 
>transport.c which has no retransmission stuff and this seems to pass all the
>HW2a tests on every submitted run. 

>So my question is can a solution for 2b fail the 2a script for the above reason?

It shouldn't (and mine doesn't).  The test verifies that you receive a
later FIN-ACK than a given FIN, and that you don't send a FIN-ACK without
a preceding FIN.  It's not too picky.  I suspect a bug in your current
retransmission implementation.

>If so remember to freeze a 2a solution.

This is a good idea anyway, in case you discover a bug later on this week
and need to resubmit your part (a) solution...
.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: Re: what does cksum in 1.C test?
Date: Mon, 27 Jan 2003 15:20:05 -0800
Lines: 35
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: saga6.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043709578 7342 171.64.15.136 (27 Jan 2003 23:19:38 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4035

Matthew Jonathan Holliman wrote:
>>I am having the same issue.  However, when I run the test manually I get 
>>the correct cksum.  Using both
>>server.log <--> client
>>and
>>client.log <--> server
> 
> 
>>Could someone please confirm a successfull run for this test.
> 
> 
> It works for me when I test my solution for the class from a couple of
> years ago.  Other people have mentioned that they pass this test case
> on the newsgroup also.
> 
> server.log and client.log are built using *your* transport.c, so the fact
> that they work against your server/client doesn't mean much, except
> that your implementation is compatible with itself.  (There's nothing
> magic about these applications--they're the regular server/client using
> your transport layer, modified also to record packet logs for grading
> purposes, as one might guess from the names).
> 
> Test 1.C tests whether your implementation is compatible with the reference
> solution, which implements STCP per the assignment specification.  (You can't
> test this manually, because the reference functionality is embedded in the
> grading executable).
> 

Last years test results contain a diff of the output file with the 
original file.  Are this years tests providing the same information? 
i.e. if my output does not contain a diff result, should I then assume 
that the files (rcvd and TESTDATA.0) match?

Thanks

.

Path: shelby.stanford.edu!elaine28.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: what does cksum in 1.C test?
Date: Tue, 28 Jan 2003 00:39:34 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: elaine28.stanford.edu
X-Trace: news.Stanford.EDU 1043714374 10555 171.64.15.103 (28 Jan 2003 00:39:34 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4036


>Last years test results contain a diff of the output file with the 
>original file.  Are this years tests providing the same information? 
>i.e. if my output does not contain a diff result, should I then assume 
>that the files (rcvd and TESTDATA.0) match?

No--this year just reports any size/cksum difference between the two files
(your downloaded version and the original) rather than using diff.  I don't
think a diff would be particularly helpful, since some discrepancy between
your implementation and the reference one would result in arbitrary errors
appearing in the diff result; but if I get a chance later on, I'll try and
add this in.

.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: command line execution problems
Date: Mon, 27 Jan 2003 22:25:30 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1043735130 21801 128.12.185.34 (28 Jan 2003 06:25:30 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4037

Hi,

My program runs fine if I specify the filename from the command line.
However it goes into an infiinte loop if I use the "-f" flag (the client's
child thread tries to read repeatedly from the application socket).

What could be causing this?

thanks,
nishant


.

Path: shelby.stanford.edu!saga0.Stanford.EDU!smadhura
From: Madhura Sudhakar Sharangpani 
Newsgroups: su.class.cs244a
Subject: Regarding packet lenght
Date: Mon, 27 Jan 2003 22:29:15 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga0.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043735356 21870 171.64.15.130 (28 Jan 2003 06:29:16 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4038

Hi
while processing incoming packet, should we only read as much data as is
specified in data length field of the header, or should we take all the
data remaining in the packet after header as data?
Madhura.

.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Regarding packet lenght
Date: Tue, 28 Jan 2003 07:29:15 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1043738955 23786 171.64.15.77 (28 Jan 2003 07:29:15 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4039

Use the data length field of the header.  That field
specifies the number of bytes of data in the packet;
the size of the header is not included.

SteveJ

In article 
Madhura Sudhakar Sharangpani   wrote:
>Hi
>while processing incoming packet, should we only read as much data as is
>specified in data length field of the header, or should we take all the
>data remaining in the packet after header as data?
>Madhura.
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: command line execution problems
Date: Tue, 28 Jan 2003 08:31:17 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1043742677 29238 171.64.15.112 (28 Jan 2003 08:31:17 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4040

I don't see any obvious reason, looking at the client.c code.

In client.c, different logic paths are taken in a few places
if the global "filename" is set.  You may want to take a look
at this code.

SteveJ

In article 
Nishant Verman  wrote:
>Hi,
>
>My program runs fine if I specify the filename from the command line.
>However it goes into an infiinte loop if I use the "-f" flag (the client's
>child thread tries to read repeatedly from the application socket).
>
>What could be causing this?
>
>thanks,
>nishant
>
>


.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: gdb on child process?
Date: Tue, 28 Jan 2003 02:04:45 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine1.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043748289 1533 171.64.15.66 (28 Jan 2003 10:04:49 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4041

Could any TA please give a little more detailed instruction on the "ugly
hack" to get gdb to use on child process? I tried to attach the child
process, and gdb asked me to restart the executable after killing the
running one.

Jichun

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: Local Testing
Date: Tue, 28 Jan 2003 16:26:46 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine22.stanford.edu
X-Trace: news.Stanford.EDU 1043771206 10366 171.64.15.87 (28 Jan 2003 16:26:46 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4042

Sometimes the simple things are not so obvious.  For local testing; i.e.,
once we have a complete transport.c which compiles, but no point yet in
running the provided test codes, we should be able to run our own trials
locally, right?

Open a window and run server [no parmameters] gives address:port.

Open a second window, run client [address:port].  Should get prompted for
a filename to get from server (then copy to "rcvd".

In my case, server dies with an error in myaccept, which must mean
something wrong in my passive init code.

Thanks

.

Path: shelby.stanford.edu!not-for-mail
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: handling network errors
Date: Tue, 28 Jan 2003 10:35:21 -0800
Lines: 41
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: slip-12-65-108-16.mis.prserv.net
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043778968 14106 12.65.108.16 (28 Jan 2003 18:36:08 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.77 [en] (Win98; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4043

Hi,
I don't quite follow this. My understanding is that
for part A) we are guaranteed to have a reliable network so
we should not be concerned about network errors.
And for parts B and C , I don't think we should make any difference
between a network error and a packet that was dropped somewhere
along the way, the end result is that we have to retransmit out packet
no matter what. The fact that the driver realizes there's a network error
and tell us so is of no importance, I would think. We still have to wait
our timeout time to retransmit and if we exhaust all of our retransmits for
a packet we shoul bail then but not before that.
In my opinion we should not even check the results from network_send().

Am I missing something here?

Thanks
Rafa

Martin Casado wrote:

>  I don't see this explicitly covered in the homework description.  The
>  socket api exposed to the application (in mysock) simply reads/writes
>  to  the child process through the fd returned from transport_init, so
>  if this is closed, reading/writing to it will produce an error.
>
>  You should, on error, shut down the transport system appropriately and
>  produce a meaningful error message.  I don't think it is necessary to set
>  errno however.
>
>  /mc
>
> > It seems that an earlier question about network failures went unanswered
> > in the message's thread.  Namely, how should we handle legitimate
> > network-layer failures? I think the ideal is that we should be able to
> > force the mysock layer functions to return -1 and set the proper errno
> > value, but I don't see how to communicate this across processes?
> >
> > Thanks,
> > Alex
> >

.

Path: shelby.stanford.edu!not-for-mail
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: A few questions about assignment 2 A
Date: Tue, 28 Jan 2003 10:49:49 -0800
Lines: 38
Distribution: su
Message-ID: 
NNTP-Posting-Host: slip-12-65-108-16.mis.prserv.net
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043779846 14613 12.65.108.16 (28 Jan 2003 18:50:46 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.77 [en] (Win98; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4044

Hi,

1.) I'm not sure what are the values that we should use for
th_sport,
th_dport,
th_off,
th_win: Is this always constant 3072? Do we need this value to implement
flow control?
th_sum,
th_urp

in a packet.

2.) Should we be concerned with the values of CWND and ERTT for part A?

3.) My implementation was intermittently failing on test 1.C. Sometimes
it would fail, sometimes
it would fail even without any code change. I logged all the transaction
from
my client and found out that in some cases I was receiving a few packets
duplicated
even though I had acknowledged those already. I thought we should not
care about this
case for part A. Has anybody found the same problem? It seems that there
is some timing
issues, if the reference server does not receive the ack within its
retransmit timeout it will retransmit
the packet. Am I correct?


Thanks,
Rafa






.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: second ack arrived first
Date: Tue, 28 Jan 2003 10:56:50 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine6.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043780212 14932 171.64.15.71 (28 Jan 2003 18:56:52 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4045

say, I sent 2 packets from my send window.  The ack of the second came
back first.  Do we discard this ack, or record it and wait for the first
ack until its n'th timeout?

Eric


.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: Re: second ack arrived first
Date: Tue, 28 Jan 2003 12:05:29 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine30.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043784331 17043 171.64.15.105 (28 Jan 2003 20:05:31 GMT)
X-Complaints-To: 
To: Eric Chenjian Xu 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4046

if u get an ack for 'n', it implies that that the other side has received
all bytes from initial sequence number to n.
so we have to interpret it as 'ack' ing both the packets

Sandhya

On Tue, 28 Jan 2003, Eric Chenjian Xu wrote:

> say, I sent 2 packets from my send window.  The ack of the second came
> back first.  Do we discard this ack, or record it and wait for the first
> ack until its n'th timeout?
>
> Eric
>
>
>

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: gdb on child process?
Date: Tue, 28 Jan 2003 21:01:27 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine22.stanford.edu
X-Trace: news.Stanford.EDU 1043787687 19861 171.64.15.87 (28 Jan 2003 21:01:27 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4047


>Could any TA please give a little more detailed instruction on the "ugly
>hack" to get gdb to use on child process? I tried to attach the child
>process, and gdb asked me to restart the executable after killing the
>running one.

It still works for me exactly as posted--the only clarification I should
make is that the sleep(N) has to be long enough for you to be able to
attach to the child process before the sleep returns, if you want to be
able to set arbitrary breakpoints in the child.

There was some clarification to the slides posted on the newsgroup previously,
probably under the heading "updated review session slides posted" (it was
in response to an email), so you might check that post also if you haven't seen
it already.

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: Test case 1.D and 1.F
Date: Tue, 28 Jan 2003 16:53:10 -0800
Lines: 14
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043801551 27760 128.12.195.69 (29 Jan 2003 00:52:31 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4048

I sent my code to you and am looking forward to your reply to help me figure
out the problem. Thanks.

"Matthew Jonathan Holliman"  wrote in message

> >My code still fails test case 1.F. I have added check in a locally copied
> >mysocket.c to see that there are times when more than 3072 bytes sit in
the
> >localpipe. 1.F is the only test case my code failed in.
>
> Please send me the code and I'll take a look at it.
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Recevier buffer
Date: Tue, 28 Jan 2003 16:54:53 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043801654 27797 128.12.195.69 (29 Jan 2003 00:54:14 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4049

For test 1.F, when the test script reports that "Transport layer receiver
buffered more than 3072 bytes of outstanding data", does it mean 3072 bytes
of processed or unprocessed data? In another word, do the 3072 bytes include
the header bytes or just 3072 bytes of combined payload of several packets?

I am unclear on the idea of "transport layer enforces correct receiver
window." Could someone please explain what the test case is testing against
and what sorts of problems may cause this case to fail?

Thanks.

-myl


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: Testcase error
Date: Tue, 28 Jan 2003 18:03:18 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043805801 461 171.64.15.74 (29 Jan 2003 02:03:21 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4050

I'm failing a couple of testcase with the following error:

 myaccept: Permission denied

What could this mean? There shouldn't be any write permission issues
here..right?


thanks,
nishant



.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: milestone A grading
Date: Tue, 28 Jan 2003 21:34:01 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1043818449 7982 128.12.79.199 (29 Jan 2003 05:34:09 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4051

Hi,

I was wondering how rigorous the style grading on this milestone will be. My
code has some data structures/functions that are overkill (and somewhat
non-functional) for part A (they're looking forward to part b). For example,
much of the functionality for dealing with out of order packets is in place
but it's incomplete. Is it cool if I just leave the extra framework in (with
the comments that tell me where to start for part b), or do you want clean
code (i.e., a standalone submission)?

thanks,
vj


.

Path: shelby.stanford.edu!not-for-mail
From: "Bina Vasavda" 
Newsgroups: su.class.cs244a
Subject: errors
Date: Tue, 28 Jan 2003 22:18:10 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: ev-01-hos4d.stanford.edu
X-Trace: news.Stanford.EDU 1043820817 9292 128.12.154.59 (29 Jan 2003 06:13:37 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4052

Hi, how do you want us to handle errors from malloc, etc? exit out?
Bina


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Office Hours Change
Date: Tue, 28 Jan 2003 23:29:12 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: russell2.stanford.edu
X-Trace: news.Stanford.EDU 1043825420 12103 128.12.177.15 (29 Jan 2003 07:30:20 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4053

Hi All,



     I am permanently shifting my office hours back 30 minutes.  Therefore,
my new office hours are now:



Wednesdays: 1:30pm until 3:00pm in Sweet hall of course



Sorry if this causes problems.



--Russ


.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: Testcase error
Date: Wed, 29 Jan 2003 00:24:14 -0800
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1043828654 14487 128.12.185.34 (29 Jan 2003 08:24:14 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4054

buffer overflow...


"Nishant Verman"  wrote in message

> I'm failing a couple of testcase with the following error:
>
>  myaccept: Permission denied
>
> What could this mean? There shouldn't be any write permission issues
> here..right?
>
>
> thanks,
> nishant
>
>
>


.

Path: shelby.stanford.edu!elaine3.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: A few questions about assignment 2 A
Date: Wed, 29 Jan 2003 09:03:31 +0000 (UTC)
Lines: 36
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1043831011 15764 171.64.15.68 (29 Jan 2003 09:03:31 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4055


>1.) I'm not sure what are the values that we should use for
>th_sport,
>th_dport,
>th_off,
>th_win: Is this always constant 3072? Do we need this value to implement
>flow control?
>th_sum,
>th_urp

You can ignore all of these; they aren't used by STCP.

>2.) Should we be concerned with the values of CWND and ERTT for part A?

Nope.

>3.) My implementation was intermittently failing on test 1.C. Sometimes
>it would fail, sometimes
>it would fail even without any code change. I logged all the transaction
>from
>my client and found out that in some cases I was receiving a few packets
>duplicated
>even though I had acknowledged those already. I thought we should not
>care about this
>case for part A. Has anybody found the same problem? It seems that there
>is some timing
>issues, if the reference server does not receive the ack within its
>retransmit timeout it will retransmit
>the packet. Am I correct?

Good point--I overlooked this.  It shouldn't happen very often in reliable
mode, since the minimum ERTT is 20 ms but it's possible if a machine is very
heavily loaded.  (During grading, we would run several times if your code
fails, and give you the benefit of the doubt if it seems to generally work.
But I'll be sure to disable the retransmissions in the reference server for
part (a) when grading).
.

Path: shelby.stanford.edu!elaine3.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: milestone A grading
Date: Wed, 29 Jan 2003 09:05:17 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1043831117 15805 171.64.15.68 (29 Jan 2003 09:05:17 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4056



>I was wondering how rigorous the style grading on this milestone will be. My
>code has some data structures/functions that are overkill (and somewhat
>non-functional) for part A (they're looking forward to part b). For example,
>much of the functionality for dealing with out of order packets is in place
>but it's incomplete. Is it cool if I just leave the extra framework in (with
>the comments that tell me where to start for part b), or do you want clean
>code (i.e., a standalone submission)?

We'll only grade functionality for parts A/B; the style/design will be based
on the final submission for part C, for the reasons you point out.
.

Path: shelby.stanford.edu!elaine3.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: handling network errors
Date: Wed, 29 Jan 2003 09:07:58 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1043831278 15839 171.64.15.68 (29 Jan 2003 09:07:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4057


>I don't quite follow this. My understanding is that
>for part A) we are guaranteed to have a reliable network so
>we should not be concerned about network errors.
>And for parts B and C , I don't think we should make any difference
>between a network error and a packet that was dropped somewhere
>along the way, the end result is that we have to retransmit out packet
>no matter what. The fact that the driver realizes there's a network error
>and tell us so is of no importance, I would think. We still have to wait
>our timeout time to retransmit and if we exhaust all of our retransmits for
>a packet we shoul bail then but not before that.
>In my opinion we should not even check the results from network_send().

>Am I missing something here?

Well, if network_send() gives you an error you probably shouldn't just
ignore it completely, if only because it may have been caused by a bug in
your program (e.g. invalid pointer).  You needn't handle errors gracefully,
as we won't be testing this--for example, an assert() would be perfectly
reasonable.

.

Path: shelby.stanford.edu!elaine3.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: errors
Date: Wed, 29 Jan 2003 09:09:59 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1043831399 15876 171.64.15.68 (29 Jan 2003 09:09:59 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4058


>Hi, how do you want us to handle errors from malloc, etc? exit out?

If malloc fails, the grading script will have died in the meantime :-)

We aren't testing weird error conditions.  (e.g., I won't go and pull the
network card from one of the elaines while testing!)  So you can handle
errors in some reasonable method--bailing out is fine.  You might also
spend a few minutes to think about how a real TCP stack would handle this
case.
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: errors
Date: Wed, 29 Jan 2003 01:11:15 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1043831543 15946 128.12.186.92 (29 Jan 2003 09:12:23 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4059

Martin answered this earlier in the newsgroup in regard to network errors.

To recap: essentially if a system call fails (especially malloc), there is
almost nothing you can do to keep your program running.

The best thing to do is report the error with a decent error message and
have your program gracefully exit.  This is much better than assuming all
system calls will succeed and then having unpredicable results when a system
call fails.

--Russ


"Bina Vasavda"  wrote in message

> Hi, how do you want us to handle errors from malloc, etc? exit out?
> Bina
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: 'select' problems
Date: Wed, 29 Jan 2003 01:25:48 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1043832137 16129 128.12.184.109 (29 Jan 2003 09:22:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4060

Hi,
   In the control-loop, when select returns, only one of local_data_sd or
sockfd are getting active in my code.
    I am writing the ACKs back on to sockfd as soon as I read the data out
of receive buffer. but the server is not reading the Acks,it's reading only
out of local_data_sd.. and only when all the data on local_data_sd is over,
it is starting to read from sockfd.
Please help.
Thanks
Pavan


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: do transport_read and transport_write exist?
Date: Wed, 29 Jan 2003 01:32:21 -0800
Lines: 25
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043832742 16362 128.12.85.0 (29 Jan 2003 09:32:22 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4061

I find it odd that I am the first to remark on this, but here goes:

Where are the transport_read and transport_write that are mentioned in the
STCP protocol overview?

It makes a special point to say that if we have 256 bytes of data sent
twice, and the receiver asks for 512, they should receive it as one lump
sum. 1. Doesn't the basic socket functionality already give this? That is,
if I read on a socket and a full 512 bytes aren't yet available, won't I
block? 2. Lacking some transport_x function, how would I know how many bytes
the application had requested? Jonathan Herbach asked the same question 2
days ago, but has not yet been answered.

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: 'select' problems
Date: Wed, 29 Jan 2003 02:25:16 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1043835983 17987 128.12.186.92 (29 Jan 2003 10:26:23 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4062

Make sure that you are calling FD_ZERO and FD_SET macros before every select
call (thus make sure they are in your loop).  There is a big warning about
this common bug in the Stevens book.

--Russ


"Pavan"  wrote in message

> Hi,
>    In the control-loop, when select returns, only one of local_data_sd or
> sockfd are getting active in my code.
>     I am writing the ACKs back on to sockfd as soon as I read the data out
> of receive buffer. but the server is not reading the Acks,it's reading
only
> out of local_data_sd.. and only when all the data on local_data_sd is
over,
> it is starting to read from sockfd.
> Please help.
> Thanks
> Pavan
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: do transport_read and transport_write exist?
Date: Wed, 29 Jan 2003 02:29:53 -0800
Lines: 39
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1043836260 18221 128.12.186.92 (29 Jan 2003 10:31:00 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4063

Because our stcp transport layer is using sockets to communicate with the
higher level applications if the application on the receiving side asks for
more data than is available, the receiving app will block on the socket
until the receiving part of your transport layer provides the necessary
data.

--Russ


"Rene Patnode"  wrote in message

> I find it odd that I am the first to remark on this, but here goes:
>
> Where are the transport_read and transport_write that are mentioned in the
> STCP protocol overview?
>
> It makes a special point to say that if we have 256 bytes of data sent
> twice, and the receiver asks for 512, they should receive it as one lump
> sum. 1. Doesn't the basic socket functionality already give this? That is,
> if I read on a socket and a full 512 bytes aren't yet available, won't I
> block? 2. Lacking some transport_x function, how would I know how many
bytes
> the application had requested? Jonathan Herbach asked the same question 2
> days ago, but has not yet been answered.
>
> --
> ____________________________________________
> Rene Patnode
> Stanford University
>
> Computer Science
> Phi Kappa Psi
> Resident Assistant, Cardenal
>
> "Mmm... unexplained bacon." - Homer Simpson
>
>


.

Path: shelby.stanford.edu!epic13.Stanford.EDU!mmahathi
From: Mahathi Sai Prasanna Mahabhashyam 
Newsgroups: su.class.cs244a
Subject: Reg FINACKS
Date: Wed, 29 Jan 2003 09:53:00 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043862784 28903 171.64.15.46 (29 Jan 2003 17:53:04 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4064

Hi,
    When I test against the test script, I am passing all the tests,
except one that says, not all the ACKs are received before FIN. But when I
check my code separately, it is blocking until it gets all ACKs before
sending the FIN. Also, the logs indicate that a FIN is received before a
FINACK was sent.. wht could be the problem?

Please help,
Mahathi.

.

Path: shelby.stanford.edu!cardinal2.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: Re: 'select' problems
Date: Wed, 29 Jan 2003 13:21:46 -0800
Lines: 32
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cardinal2.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043875309 5973 171.64.15.250 (29 Jan 2003 21:21:49 GMT)
X-Complaints-To: 
To: Russell Greene 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4065

if we are going to set the same sockfds every time, why should we FD_ZERO
every time?

On Wed, 29 Jan 2003, Russell Greene wrote:

> Make sure that you are calling FD_ZERO and FD_SET macros before every select
> call (thus make sure they are in your loop).  There is a big warning about
> this common bug in the Stevens book.
>
> --Russ
>
>
> "Pavan"  wrote in message
> 
> > Hi,
> >    In the control-loop, when select returns, only one of local_data_sd or
> > sockfd are getting active in my code.
> >     I am writing the ACKs back on to sockfd as soon as I read the data out
> > of receive buffer. but the server is not reading the Acks,it's reading
> only
> > out of local_data_sd.. and only when all the data on local_data_sd is
> over,
> > it is starting to read from sockfd.
> > Please help.
> > Thanks
> > Pavan
> >
> >
>
>
>

.

Path: shelby.stanford.edu!saga20.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: how to link real time libraries -lrt?
Date: Wed, 29 Jan 2003 21:31:44 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga20.stanford.edu
X-Trace: news.Stanford.EDU 1043875904 6347 171.64.15.150 (29 Jan 2003 21:31:44 GMT)
X-Complaints-To: 
Keywords: -lrt
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4066

if we are not supposed to change the Makefile, how can I use some of the libraries which require compile time linking?

I want to use the -lrt option.

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: milestone A grading
Date: Wed, 29 Jan 2003 22:54:24 +0000 (UTC)
Organization: Stanford University
Lines: 17
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: epic22.stanford.edu
X-Trace: news.Stanford.EDU 1043880864 10656 171.64.15.57 (29 Jan 2003 22:54:24 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4067


So full credit will be given if HW2A and HW2B passes all the tests?

In article 
  (Matthew Jonathan Holliman) writes:
> 
> 
> >I was wondering how rigorous the style grading on this milestone will be. My
> >code has some data structures/functions that are overkill (and somewhat
> >non-functional) for part A (they're looking forward to part b). For example,
> >much of the functionality for dealing with out of order packets is in place
> >but it's incomplete. Is it cool if I just leave the extra framework in (with
> >the comments that tell me where to start for part b), or do you want clean
> >code (i.e., a standalone submission)?
> 
> We'll only grade functionality for parts A/B; the style/design will be based
> on the final submission for part C, for the reasons you point out.
.

Path: shelby.stanford.edu!not-for-mail
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: Re: Recevier buffer
Date: Wed, 29 Jan 2003 14:57:39 -0800
Organization: Stanford University
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga5.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043881060 10924 171.64.15.135 (29 Jan 2003 22:57:40 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4068

did you find out from Matthew what this testcase is doing?
I'm also failing on this but can't figure out what they're actually
testing in this.


nishant


Man Yu Lui wrote:
> 
> For test 1.F, when the test script reports that "Transport layer receiver
> buffered more than 3072 bytes of outstanding data", does it mean 3072 bytes
> of processed or unprocessed data? In another word, do the 3072 bytes include
> the header bytes or just 3072 bytes of combined payload of several packets?
> 
> I am unclear on the idea of "transport layer enforces correct receiver
> window." Could someone please explain what the test case is testing against
> and what sorts of problems may cause this case to fail?
> 
> Thanks.
> 
> -myl
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Help with sequence numbers
Date: Wed, 29 Jan 2003 15:04:56 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043881497 11405 171.64.15.82 (29 Jan 2003 23:04:57 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4069

Hi Everyone,

I'm getting myself all mixed up and turned around with sequence numbers. I
understand the number exchange during connect and teardown, but am
confused as to how the numbers are supposed to be handled during data
transmission.

Could somebody please post or point me to an example of the sequence
number passing used in our 2 way handshake followed by the exchange of a
few data packets with the server.

Thanks,
Tim



.

Path: shelby.stanford.edu!saga20.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: FIN - connection teardown
Date: Wed, 29 Jan 2003 23:27:50 +0000 (UTC)
Lines: 23
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga20.stanford.edu
X-Trace: news.Stanford.EDU 1043882870 12339 171.64.15.150 (29 Jan 2003 23:27:50 GMT)
X-Complaints-To: 
Keywords: FIN
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4070


Can someone let me know if this is correct?

      transport_close()
         -
         -
      client realizes connection close
         -
         -
       client waits for all data                 remote client
          to be ACKED                             sends the pending ACKS
         -                                           -
         ------------------------------------->      -
               SENDS FIN                          Revs FIN
                                                     -          
        -                                            -
        -                                            -      
        <---------------------------------------  sends FIN_ACK
                Sends FIN_ACK                      client exits
        -
        -
        client exits

.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: Help with sequence numbers
Date: Wed, 29 Jan 2003 15:39:11 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043883551 12680 128.12.187.58 (29 Jan 2003 23:39:11 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4071

On Wed, 29 Jan 2003 15:04:56 -0800, Tim Reddy 
wrote:

>Hi Everyone,
>
>I'm getting myself all mixed up and turned around with sequence numbers. I
>understand the number exchange during connect and teardown, but am
>confused as to how the numbers are supposed to be handled during data
>transmission.
>
>Could somebody please post or point me to an example of the sequence
>number passing used in our 2 way handshake followed by the exchange of a
>few data packets with the server.

	I'm having a few problems, too... what I'd like to know is
when which sequence number is used -- since there are two sequence
numbers running around for each send/receive pair, when do you use
which? When you send a packet, is the sequence number the byte # that
the client is expecting, or the byte # that the sender is sending? (I
know the number should correspond to the same byte, but I'm wondering
which is used.) Also, when you ACK, do you ack back with the next byte
you're expecting to receive, or the next byte that you want the sender
to send?
.

Path: shelby.stanford.edu!cardinal3.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: Re: Help with sequence numbers
Date: Wed, 29 Jan 2003 15:51:11 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: cardinal3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043884272 13079 171.64.15.251 (29 Jan 2003 23:51:12 GMT)
X-Complaints-To: 
To: Peter Lai 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4072

 i'll try to give an example

- first of all...
sequence number indicates the byte number of the first byte u are sending
ack number indicates the byte u r expecting next

Side A listens passively and side B initiates the connection

B to A Syn with seq x
A to B SynAck with seq y ack x+1

if B sends data to A
B to A data pkt seq x+1 length z
A to B ack x+z+1

if A sends data
A to B data pkt seq y+1 length m
B to A ack y+1+m

--hope i'm not confusing u further ;)

Sandhya

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Local Testing
Date: Thu, 30 Jan 2003 00:09:57 +0000 (UTC)
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043885397 13678 171.64.15.106 (30 Jan 2003 00:09:57 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4073


>Sometimes the simple things are not so obvious.  For local testing; i.e.,
>once we have a complete transport.c which compiles, but no point yet in
>running the provided test codes, we should be able to run our own trials
>locally, right?

Yep.

>Open a window and run server [no parmameters] gives address:port.

>Open a second window, run client [address:port].  Should get prompted for
>a filename to get from server (then copy to "rcvd".

>In my case, server dies with an error in myaccept, which must mean
>something wrong in my passive init code.

If you print out the packet log (e.g. do a dprintf before you do a 
network_send, or after a network_recv), what's the output?  Can you
step into the code with gdb?  Does Purify report any errors?  (I'd
always use Purify for my first attempt at tracking down weird bugs--if
you're lucky enough for it to catch the problem, it can save a lot
of time).

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Recevier buffer
Date: Thu, 30 Jan 2003 00:13:49 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043885629 13835 171.64.15.106 (30 Jan 2003 00:13:49 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4074

Nishant Verman  writes:

>did you find out from Matthew what this testcase is doing?
>I'm also failing on this but can't figure out what they're actually
>testing in this.

The test case is fairly innocuous; it just looks for successive ACKs
that exceed the window length.  (I can't test an invalid receiver window
more comprehensively until part (b), due to the in-order packet delivery
constraint in part (a)).

I haven't had a chance to track down what's going on yet, but I'll post on
here if I find out what's causing this behaviour.  (If you could send me your
code also, it would be another data point to look at).

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 'select' problems
Date: Thu, 30 Jan 2003 00:15:58 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043885758 13965 171.64.15.106 (30 Jan 2003 00:15:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4075


>if we are going to set the same sockfds every time, why should we FD_ZERO
>every time?

Remember that select() writes to the array you pass in, which is why you use
the FS_ISSET() macro after the call returns to determine whether a given
descriptor was active or not.  So you need to reinitialize this array before
the next call to select().


>On Wed, 29 Jan 2003, Russell Greene wrote:

>> Make sure that you are calling FD_ZERO and FD_SET macros before every select
>> call (thus make sure they are in your loop).  There is a big warning about
>> this common bug in the Stevens book.
.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Recevier buffer
Date: Thu, 30 Jan 2003 00:24:57 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043886297 14614 171.64.15.106 (30 Jan 2003 00:24:57 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4076

I just looked at the script again, and it seems that when I commented out
the more stringent test, I forgot to remove a related check.  (It would
cause the test to fail if your transport layer reads/writes data much
faster than the application reads it with myread()).  So you might try
this again and see if you still have problems.  Let me know how it goes.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: milestone A grading
Date: Thu, 30 Jan 2003 00:25:33 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043886333 14631 171.64.15.106 (30 Jan 2003 00:25:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4077


>So full credit will be given if HW2A and HW2B passes all the tests?

As long as they pass all the tests for us :-)

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: how to link real time libraries -lrt?
Date: Thu, 30 Jan 2003 00:27:44 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043886464 14717 171.64.15.106 (30 Jan 2003 00:27:44 GMT)
X-Complaints-To: 
Keywords: -lrt
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4078


>if we are not supposed to change the Makefile, how can I use some of the libraries which require compile time linking?

You can't.  The prohibition on changing the Makefile isn't due to whimsy on
our part; the Makefile is replaced with our own during grading, which doesn't
link your code with arbitrary libraries.

>I want to use the -lrt option.

Please use poll()/select() to handle the timeouts rather than the real-time
timers.
.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Reg FINACKS
Date: Thu, 30 Jan 2003 00:38:47 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043887127 15015 171.64.15.106 (30 Jan 2003 00:38:47 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4079


>    When I test against the test script, I am passing all the tests,
>except one that says, not all the ACKs are received before FIN. But when I
>check my code separately, it is blocking until it gets all ACKs before
>sending the FIN. Also, the logs indicate that a FIN is received before a
>FINACK was sent.. wht could be the problem?

Are these your logs of packets/ACKs sent/received?  Does Purify report any
errors?  (One or two people reported problems with FINs, and they came from
returning structures allocated on the stack, causing intermittent failures).

If you still have problems, I can try and take a look at your code--probably
not before tomorrow, though.
.

Path: shelby.stanford.edu!saga20.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: cksum error?
Date: Thu, 30 Jan 2003 00:39:21 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga20.stanford.edu
X-Trace: news.Stanford.EDU 1043887161 15031 171.64.15.150 (30 Jan 2003 00:39:21 GMT)
X-Complaints-To: 
Keywords: cksum
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4080

My implementation works fine for transfering  text files.
The cksum output is correct.

but fails for the binary files.
any pointers?
.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: FIN - connection teardown
Date: Thu, 30 Jan 2003 00:40:01 +0000 (UTC)
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043887201 15047 171.64.15.106 (30 Jan 2003 00:40:01 GMT)
X-Complaints-To: 
Keywords: FIN
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4081



>Can someone let me know if this is correct?

>      transport_close()
>         -
>         -
>      client realizes connection close
>         -
>         -
>       client waits for all data                 remote client
>          to be ACKED                             sends the pending ACKS
>         -                                           -
>         ------------------------------------->      -
>               SENDS FIN                          Revs FIN
>                                                     -          
>        -                                            -
>        -                                            -      
>        <---------------------------------------  sends FIN_ACK
>                Sends FIN_ACK                      client exits
>        -
>        -
>        client exits

Yes.

.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: Help with sequence numbers
Date: Wed, 29 Jan 2003 16:41:26 -0800
Lines: 22
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043887286 15143 128.12.187.58 (30 Jan 2003 00:41:26 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4082

>- first of all...
>sequence number indicates the byte number of the first byte u are sending
>ack number indicates the byte u r expecting next
>
>Side A listens passively and side B initiates the connection
>
>B to A Syn with seq x
>A to B SynAck with seq y ack x+1
>
>if B sends data to A
>B to A data pkt seq x+1 length z
>A to B ack x+z+1
>
>if A sends data
>A to B data pkt seq y+1 length m
>B to A ack y+1+m

	Ahhhhh, NOW I understand why it's called a synchronization
packet ;) That helped a lot, thanks! Now if only I weren't out of
testing tries because I thought something else was the bug... :p


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: cksum error?
Date: Thu, 30 Jan 2003 00:44:07 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043887447 15217 171.64.15.106 (30 Jan 2003 00:44:07 GMT)
X-Complaints-To: 
Keywords: cksum
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4083


>My implementation works fine for transfering  text files.
>The cksum output is correct.

>but fails for the binary files.
>any pointers?

I don't have a plausible theory.  I assume you aren't using strlen() or
something similar somewhere.  Are the binary files of larger size than the
text files you transfer?
.

Path: shelby.stanford.edu!saga20.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: cksum error?
Date: Thu, 30 Jan 2003 00:47:04 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga20.stanford.edu
X-Trace: news.Stanford.EDU 1043887624 15367 171.64.15.150 (30 Jan 2003 00:47:04 GMT)
X-Complaints-To: 
Keywords: cksum
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4084

When I transfer a text file as big as the binary it works fine.

 (Matthew Jonathan Holliman) writes:


>>My implementation works fine for transfering  text files.
>>The cksum output is correct.

>>but fails for the binary files.
>>any pointers?

>I don't have a plausible theory.  I assume you aren't using strlen() or
>something similar somewhere.  Are the binary files of larger size than the
>text files you transfer?
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: network_send: Destination address required?
Date: Wed, 29 Jan 2003 16:55:03 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043888104 15591 171.64.15.82 (30 Jan 2003 00:55:04 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4085

I think somebody else had a similar problem, but I can't seem to find it
now...

I'm having a problem where the client and server start up fine and
handshake. Then I request a file via the client, which correctly sends the
request off to the server, which then uses the local socket to pipe the
file requested into my transport layer. However, whenever I try to send
any packets out from the server back to the client, sendmsg within
network_send fails, and perror cites "Destination address required" as
the error.

Has anybody else come across this or have any idea what is going on here?

Thanks,
Tim



.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: Local vs. Network Sockets
Date: Wed, 29 Jan 2003 17:02:18 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1043888539 15894 128.12.106.31 (30 Jan 2003 01:02:19 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4086

When we are sending/receiving data on the local socket
(ctx->local_socket_sd), what functions do we use?  Do we use the provided
network layer functions, network_send and network_recv?  Do these functions
overwrite the address variables in network.c everytime they are called?

The problem I'm getting happens after the client sends the filename to the
server, and the server gets the name, processes it, and tries to send the
data back across its sockfd.  I try sending data over the remote sock:
network_send(ctx->sockfd, data, len), but I keep getting an error (errno =
96, perror: destination address required).  Why would this destination
address be empty?  I thought that network.c handled setting all that up for
us?  Everything seems to work fine up to this point (the SYNS are working).

Any ideas?

Thanks,
Srinivas


.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: Re: network_send: Destination address required?
Date: Wed, 29 Jan 2003 17:04:34 -0800
Lines: 32
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1043888675 15951 128.12.106.31 (30 Jan 2003 01:04:35 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4087

Tim,

Haha!

I have the same exact problem, and instead of reading your post, I posted my
own blindly seven minutes after you!

I hope someone knows how to fix this, or can help... :)
Srinivas

"Tim Reddy"  wrote in message

> I think somebody else had a similar problem, but I can't seem to find it
> now...
>
> I'm having a problem where the client and server start up fine and
> handshake. Then I request a file via the client, which correctly sends the
> request off to the server, which then uses the local socket to pipe the
> file requested into my transport layer. However, whenever I try to send
> any packets out from the server back to the client, sendmsg within
> network_send fails, and perror cites "Destination address required" as
> the error.
>
> Has anybody else come across this or have any idea what is going on here?
>
> Thanks,
> Tim
>
>
>


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Local vs. Network Sockets
Date: Thu, 30 Jan 2003 01:08:24 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043888904 16111 171.64.15.106 (30 Jan 2003 01:08:24 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4088


>When we are sending/receiving data on the local socket
>(ctx->local_socket_sd), what functions do we use?  Do we use the provided
>network layer functions, network_send and network_recv?  Do these functions
>overwrite the address variables in network.c everytime they are called?

You definitely should *not* use these--you just use a regular read()/write()
on this socket.  (It's a normal TCP connection--you can look in
localsocketpair() to see how it's set up).  If you look at network.c,
it'll be clear why you wouldn't use the network_...() calls on the
application I/O socket.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: network_send: Destination address required?
Date: Thu, 30 Jan 2003 01:09:13 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043888953 16134 171.64.15.106 (30 Jan 2003 01:09:13 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4089



>I hope someone knows how to fix this, or can help... :)

Did Purify indicate any errors?  (My stock response to questions for which
I don't know the immediate answer).

.

Path: shelby.stanford.edu!saga3.Stanford.EDU!kushcu
From: Ozgun Ali Erdogan 
Newsgroups: su.class.cs244a
Subject: 1B and 1C response
Date: Wed, 29 Jan 2003 17:11:58 -0800
Lines: 35
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043889119 16236 171.64.15.133 (30 Jan 2003 01:11:59 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4090


Hi,

I compile and run my transport.c, and there seems to be no problem with
file transfer. I diffed big files with rcvd, and problem seemed to come
up. When I run the test script, tests 1B and 1C fail and others run fine.

What could be the problem?

Test 1.B [out of 10]
Checks student Tx (server) against reference Rx (client).

Results:  NOT OK

No 'rcvd' created!  Client output:
server:
Malformed response from server.

----------------------------------------------------------------------

Test 1.C [out of 10]
Checks reference transmitter against student receiver.

Results:  NOT OK

No 'rcvd' created!  Client output:
server:
Malformed response from server.

----------------------------------------------------------------------

Thanks,

Ozgun.

.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Re: test 1.I
Date: Wed, 29 Jan 2003 17:20:04 -0800
Lines: 22
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1043889620 16569 128.12.181.52 (30 Jan 2003 01:20:20 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4091

I'm currently only failing the test 1.I (No FIN-ACK for FIN).  But, when I
tested my code locally I could see a FIN-ACK being transmitted and received
using printf.  So, I'm not quite sure why I'm failing this test.  My
purify'ed code reported no memory leak.  I think that maybe it's due to how
I form the FIN-ACK packet?  I'm setting the th_seq and th_ack to 0 for both
FIN and FIN-ACK packets since this is what was said in last year's
newsgroup.  Is this correct?  Anyone have any idea why else I would be
failing this?  How is the test verifying that you receive a later FIN-ACK
than a given FIN if no sequence numbers are used in the FIN/FIN-ACK packet?

thanks,

Metha


> It shouldn't (and mine doesn't).  The test verifies that you receive a
> later FIN-ACK than a given FIN, and that you don't send a FIN-ACK without
> a preceding FIN.  It's not too picky.  I suspect a bug in your current
> retransmission implementation.



.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 01:21:20 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043889680 16607 171.64.15.106 (30 Jan 2003 01:21:20 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4092


Some other people have reported problems talking to the reference STCP
implementation; unfortunately, I suppose there might be many ways to cause
this to happen.  I know one person had made an assumption about packet length,
which of course held only in his sender/receiver and not in others.  You
might read through the specs again to make sure you haven't made a similar
assumption that's not guaranteed by STCP.

If anyone else on here has had problems with--and solutions to--this part,
please do consider sharing your experiences; I think it would be very valuable
to others.

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test 1.I
Date: Thu, 30 Jan 2003 01:33:19 +0000 (UTC)
Lines: 17
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1043890399 16995 171.64.15.106 (30 Jan 2003 01:33:19 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4094


>I'm currently only failing the test 1.I (No FIN-ACK for FIN).  But, when I
>tested my code locally I could see a FIN-ACK being transmitted and received
>using printf.  So, I'm not quite sure why I'm failing this test.  My
>purify'ed code reported no memory leak.  I think that maybe it's due to how
>I form the FIN-ACK packet?  I'm setting the th_seq and th_ack to 0 for both
>FIN and FIN-ACK packets since this is what was said in last year's
>newsgroup.  Is this correct?  Anyone have any idea why else I would be
>failing this?  How is the test verifying that you receive a later FIN-ACK
>than a given FIN if no sequence numbers are used in the FIN/FIN-ACK packet?

The th_seq and th_ack fields are ignored for FIN packets in STCP
(since the FIN isn't sent until all outstanding data's been ACKed).
The test itself just looks through a log packets sent/received in
chronological order, since you should never receive a FIN-ACK until
you've sent a FIN.

.

Path: shelby.stanford.edu!epic21.Stanford.EDU!sidj
From: Siddharth Joshi 
Newsgroups: su.class.cs244a
Subject: CheckSum Error
Date: Wed, 29 Jan 2003 18:40:13 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043894418 19202 171.64.15.56 (30 Jan 2003 02:40:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4095

Hi,

I am not getting the TEST 1.B right.

I have tested the TESTDATA.0 (text file) separately. It works fine.
Exactly the same size file.
"diff" (command) output is also perfect.

What is happenning??

Siddharth Joshi
EE, Stanford


.

Path: shelby.stanford.edu!not-for-mail
From: Siddharth Joshi 
Newsgroups: su.class.cs244a
Subject: Re: CheckSum Error
Date: Wed, 29 Jan 2003 18:43:17 -0800
Organization: EE, Stanford University
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: epic21.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043894597 19243 171.64.15.56 (30 Jan 2003 02:43:17 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4096

Siddharth Joshi wrote:
> 
> Hi,
> 
> I am not getting the TEST 1.B right.
> 
> I have tested the TESTDATA.0 (text file) separately. It works fine.
> Exactly the same size file.
> "diff" (command) output is also perfect.
> 
> What is happenning??
> 
> Siddharth Joshi
> EE, Stanford


I have tried with binary files also . The binary files could be as
before.

Just that the permission are to be correctly set for the rcvd file.

Siddharth Joshi
EE, Stanford
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Re: network_send: Destination address required?
Date: Wed, 29 Jan 2003 18:58:26 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043895509 19951 171.64.15.82 (30 Jan 2003 02:58:29 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4097

Well yes and no:

I have been getting a problem with purify complaining about reading 2
bytes past the stack when I try to access the "data_len" field from a
_STCP_Header struct (giving a UMR error), and I can't seem to coax the
compiler into only reading two bytes instead of 4. However, I can easily
work around this by just keeping a mirrored "unsigned int" and using that
instead, at which point purify gives a clean bill of health. So, unless
there is something sneaky/subtle with that u_short value that purify won't
catch, then I'd say no, purify shows nothing.

Any other ideas?

-Tim

On Thu, 30 Jan 2003, Matthew Jonathan Holliman wrote:

>
>
> >I hope someone knows how to fix this, or can help... :)
>
> Did Purify indicate any errors?  (My stock response to questions for which
> I don't know the immediate answer).
>
>



.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Re: network_send: Destination address required
Date: Wed, 29 Jan 2003 19:03:50 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043895832 20140 171.64.15.82 (30 Jan 2003 03:03:52 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4098

Ahhh...finally.

Turns out I was also using network_send/network_recv for the local
sockets, which was causing the problem. Not everything works fine.

Thanks Matt!
Tim

On Thu, 30 Jan 2003, Matthew Jonathan Holliman wrote:

>
>
> >I hope someone knows how to fix this, or can help... :)
>
> Did Purify indicate any errors?  (My stock response to questions for which
> I don't know the immediate answer).
>
>



.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Re: cksum error?
Date: Wed, 29 Jan 2003 19:22:45 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1043896750 20842 128.12.184.109 (30 Jan 2003 03:19:10 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4099

I am getting  the same problem too.. pls mail back if you could correct
that!

"Chandrakala Kappanna"  wrote in message

> My implementation works fine for transfering  text files.
> The cksum output is correct.
>
> but fails for the binary files.
> any pointers?


.

Path: shelby.stanford.edu!epic17.Stanford.EDU!mmahathi
From: Mahathi Sai Prasanna Mahabhashyam 
Newsgroups: su.class.cs244a
Subject: Re: Reg FINACKS
Date: Wed, 29 Jan 2003 19:30:33 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: epic17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043897436 21367 171.64.15.52 (30 Jan 2003 03:30:36 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4100

Hi again,
   I figured out the problem...i was sending in more data in the ACKs than
necessary...
Thanks,

Mahathi.
On Thu, 30 Jan 2003, Matthew Jonathan Holliman wrote:

>
> >    When I test against the test script, I am passing all the tests,
> >except one that says, not all the ACKs are received before FIN. But when I
> >check my code separately, it is blocking until it gets all ACKs before
> >sending the FIN. Also, the logs indicate that a FIN is received before a
> >FINACK was sent.. wht could be the problem?
>
> Are these your logs of packets/ACKs sent/received?  Does Purify report any
> errors?  (One or two people reported problems with FINs, and they came from
> returning structures allocated on the stack, causing intermittent failures).
>
> If you still have problems, I can try and take a look at your code--probably
> not before tomorrow, though.
>

.

Path: shelby.stanford.edu!epic17.Stanford.EDU!mmahathi
From: Mahathi Sai Prasanna Mahabhashyam 
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Wed, 29 Jan 2003 19:39:19 -0800
Lines: 33
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: epic17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043897960 21668 171.64.15.52 (30 Jan 2003 03:39:20 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4101

Hi,
   I had a similar experience too...
   The error I made was this...
   A                            B
SYN seq x                     SYNACK seq y ack x+1

Start data with x+1           Start data with y //Error
                                                //Should start with y+1

ie., i was starting the sequence number from the PASSIVE end from "y"
instead of "y+1". This might work with your own implementation, but fails
with the reference.

Hope this helps :)
Mahathi.


On Thu, 30 Jan 2003, Matthew Jonathan Holliman wrote:

>
> Some other people have reported problems talking to the reference STCP
> implementation; unfortunately, I suppose there might be many ways to cause
> this to happen.  I know one person had made an assumption about packet length,
> which of course held only in his sender/receiver and not in others.  You
> might read through the specs again to make sure you haven't made a similar
> assumption that's not guaranteed by STCP.
>
> If anyone else on here has had problems with--and solutions to--this part,
> please do consider sharing your experiences; I think it would be very valuable
> to others.
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Noh, Jeonghun" 
Newsgroups: su.class.cs244a
Subject: FIN/FIN-ACK timing.
Date: Wed, 29 Jan 2003 20:20:27 -0800
Organization: Stanford. EE
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: ohnohoya.stanford.edu
X-Trace: news.Stanford.EDU 1043900559 23549 128.12.151.44 (30 Jan 2003 04:22:39 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4102

I've looked up all the FIN/FIN-ACK Q&A and still get confused.

Please give me a short answer, so that I can get out of this murky trap.


1. the application will call myclose(). then STCP will send all the data
sitting on the buffer to the peer.

2. And it will send FIN. So, at this moment, the active STCP won't need to
wait for all data sent being ACKed. (the spec says..)

3. The peer STCP will send FIN-ACK as soon as it receives FIN, even if it
still has something to send. (So FIN-ACK can go first before some data
arrives due to the network congestion..)

For me, the timing problem is bothering me. Should we wait for all the ACKs
before sending FIN, because the active connection-closing part doesn't want
to have any data lost at the receiving part.

--
*********************************
Jeonghun Noh
Dept. of Electrical Engineering
Stanford University
Tel : 1-650-497-6665

*********************************


.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: FIN/FIN-ACK timing.
Date: Thu, 30 Jan 2003 05:12:16 +0000 (UTC)
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine6.stanford.edu
X-Trace: news.Stanford.EDU 1043903536 25242 171.64.15.71 (30 Jan 2003 05:12:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4103


>1. the application will call myclose(). then STCP will send all the data
>sitting on the buffer to the peer.

Correct.

>2. And it will send FIN. So, at this moment, the active STCP won't need to
>wait for all data sent being ACKed. (the spec says..)

Not so--it will send the FIN only once all outstanding data has been
ACKed.  I see the assignment should be clarified on this point.

>3. The peer STCP will send FIN-ACK as soon as it receives FIN, even if it
>still has something to send. (So FIN-ACK can go first before some data
>arrives due to the network congestion..)

The peer STCP will indeed send FIN-ACK and bail out as soon as it receives
a FIN, regardless of outstanding data it has to send.  We have a simpler
teardown model than normal TCP.

>For me, the timing problem is bothering me. Should we wait for all the ACKs
>before sending FIN, because the active connection-closing part doesn't want
>to have any data lost at the receiving part.

Yeah.

.

Path: shelby.stanford.edu!not-for-mail
From: Cynthia Wei-Jia Lau 
Newsgroups: su.class.cs244a
Subject: part A requirements, again
Date: Wed, 29 Jan 2003 21:45:48 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine6.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043905549 26102 171.64.15.71 (30 Jan 2003 05:45:49 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4104

Hi,

In a previous posting, Steve (TA) said that we didn't have to worry
about packets that were outside or partially outside the receiver window
for part A of the assignment.  I'm not totally clear on what this means;
for now, then, if a packet is partially outside the receiver window, can
we just discard it, even though we're not supposed to handle lost
packets in part A?  

In other words, can we assume that the case of a packet overflowing the
receiver window will never even come up in the testing for part A?

-Cynthia Lau
.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Re: cksum error?
Date: Wed, 29 Jan 2003 22:29:19 -0800
Lines: 20
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1043907944 27204 128.12.184.109 (30 Jan 2003 06:25:44 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4105

Matthew guessed it right.. I was using strncpy() while copying buffer read
from application to the send packet .. and so it was not working. Hope this
helps!

"Pavan"  wrote in message

> I am getting  the same problem too.. pls mail back if you could correct
> that!
>
> "Chandrakala Kappanna"  wrote in message
> 
> > My implementation works fine for transfering  text files.
> > The cksum output is correct.
> >
> > but fails for the binary files.
> > any pointers?
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Kwangmoo Koh" 
Newsgroups: su.class.cs244a
Subject: Q: Test 1.B and 1.I
Date: Wed, 29 Jan 2003 23:00:51 -0800
Lines: 43
Distribution: su
Message-ID: 
NNTP-Posting-Host: kmcomputer.stanford.edu
X-Trace: news.Stanford.EDU 1043910052 28235 128.12.194.84 (30 Jan 2003 07:00:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4106

Hi,

I have two questions.

1) what does the "incorrect length in header" and ": Bad file number" mean?

2) Does "No FIN-ACK for FIN" mean that I don't send FIN-ACK after receiving
FIN?
    (I send FIN-ACK whenever I receive FIN)


------------------------------------------
Test 1.B [out of 10]
Checks student Tx (server) against reference Rx (client).

Results:  NOT OK

File size differs for /usr/class/cs244a/grading_script/hw2/TESTDATA.0!
(You downloaded 0 byte(s), expected 110230).
Client output:
server: TESTDATA.0,110230,Ok
sock_io: incorrect length in header, packet dropped!
: Bad file number
sock_io: incorrect length in header, packet dropped!
: Bad file number
sock_io: incorrect length in header, packet dropped!
: Bad file number
sock_io: incorrect length in header, packet dropped!
: Bad file number
sock_io: incorrect length in header, packet dropped!
: Bad file number

------------------------------------------

Test 1.I [out of 5]
Checks that FIN is correctly ACKed.

Results:  NOT OK

No FIN-ACK for FIN



.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Wed, 29 Jan 2003 23:05:53 -0800
Lines: 38
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043910354 28324 171.64.15.115 (30 Jan 2003 07:05:54 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4107

hi class!

my PASSIVE end sends data with "y+1" but still fails test 1.B and 1.C

the problem (for 1.C at least) seems to be that since TESTDATA.0 is such a
large file that the probability of one of the many data packets getting
dropped/mis-sequenced becomes considerably high.

for Part A of this project, our code does not handle dropped or
mis-sequenced packet and thus does not pass the tests.

any thought on this? would it be possible for the TAs to make the
reference server/client available for testing so in event of packets
getting dropped/mis-sequenced, we can manually test without worrying about
the test script usage quota?

thanks!
Tan


On Wed, 29 Jan 2003, Mahathi Sai Prasanna Mahabhashyam wrote:

> Hi,
>    I had a similar experience too...
>    The error I made was this...
>    A                            B
> SYN seq x                     SYNACK seq y ack x+1
>
> Start data with x+1           Start data with y //Error
>                                                 //Should start with y+1
>
> ie., i was starting the sequence number from the PASSIVE end from "y"
> instead of "y+1". This might work with your own implementation, but fails
> with the reference.
>
> Hope this helps :)
> Mahathi.

.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Wed, 29 Jan 2003 23:22:06 -0800
Lines: 18
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043911326 28647 128.12.187.58 (30 Jan 2003 07:22:06 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4108


>any thought on this? would it be possible for the TAs to make the
>reference server/client available for testing so in event of packets
>getting dropped/mis-sequenced, we can manually test without worrying about
>the test script usage quota?

	Just to second this question... I guess the reason you don't
want people to have unlimited usage of the scripts is so that they
don't use them as a crutch, but since we don't have access to the
reference server & client, it's very difficult to figure out what's
going on -- the first several times I ran the script, I got no output
because I had all of my debug statements going through dprintf, which
is disabled when you run the test script. I have a decent idea of what
it is I need to test, but narrowing down what the bug could be is
pretty difficult when all you know is "it has to meet specifications,"
and there's no indication of what specification it fails exactly.

Peter
.

Path: shelby.stanford.edu!not-for-mail
From: "Keith Simmons" 
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Wed, 29 Jan 2003 23:42:40 -0800
Lines: 35
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: ksimmons.stanford.edu
X-Trace: news.Stanford.EDU 1043912561 29574 128.12.105.123 (30 Jan 2003 07:42:41 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4109

Not to keep beating a dead horse, but like everyone else, I'm also having
problems with 1c (though my 1b always seems to work).  I imagine if other
people can pass this test consistently, assuming they haven't implemented
any part of B, then there must be something wrong with my code.
    However, strangely, my code intermittently passes the 1c test.  I ran it
once, and it didn't work.  So I spent a couple hours trying to figure out
what was wrong.  Then, after making only a few minor changes, it seemed to
work, somewhat mysteriously.  I went to work on another project for a couple
hours, and it has now quit working again.  Any idea why this might happen?
Is it because of dropped packets?  I thought the grading script ensured this
didn't happen.

"Peter Lai"  wrote in message

>
> >any thought on this? would it be possible for the TAs to make the
> >reference server/client available for testing so in event of packets
> >getting dropped/mis-sequenced, we can manually test without worrying
about
> >the test script usage quota?
>
> Just to second this question... I guess the reason you don't
> want people to have unlimited usage of the scripts is so that they
> don't use them as a crutch, but since we don't have access to the
> reference server & client, it's very difficult to figure out what's
> going on -- the first several times I ran the script, I got no output
> because I had all of my debug statements going through dprintf, which
> is disabled when you run the test script. I have a decent idea of what
> it is I need to test, but narrowing down what the bug could be is
> pretty difficult when all you know is "it has to meet specifications,"
> and there's no indication of what specification it fails exactly.
>
> Peter


.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 00:07:50 -0800
Lines: 22
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043914070 712 128.12.187.58 (30 Jan 2003 08:07:50 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4110

On Thu, 30 Jan 2003 01:21:20 +0000 (UTC), 
(Matthew Jonathan Holliman) wrote:

>
>Some other people have reported problems talking to the reference STCP
>implementation; unfortunately, I suppose there might be many ways to cause
>this to happen.  I know one person had made an assumption about packet length,
>which of course held only in his sender/receiver and not in others.  You
>might read through the specs again to make sure you haven't made a similar
>assumption that's not guaranteed by STCP.
>
>If anyone else on here has had problems with--and solutions to--this part,
>please do consider sharing your experiences; I think it would be very valuable
>to others.
	
	Just like Mahathi, I botched the ACK numbers, which caused my
program to completely fail B & C. I fixed it up (thanks to someone
else's post) and now everything seems to be humming along :) The
malformed response from server response didn't clue me in, but I guess
it's hard to make the script have more specific responses.

Peter
.

Path: shelby.stanford.edu!not-for-mail
From: "Kwangmoo Koh" 
Newsgroups: su.class.cs244a
Subject: Re: Test 1.B and 1.I
Date: Thu, 30 Jan 2003 00:14:38 -0800
Lines: 55
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: kmcomputer.stanford.edu
X-Trace: news.Stanford.EDU 1043914479 1570 128.12.194.84 (30 Jan 2003 08:14:39 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4111

Never mind,

I miswrote the max payload size, 536, as 538.

If you're having a trouble with a reference server,
check the window or payload size.


> Hi,
>
> I have two questions.
>
> 1) what does the "incorrect length in header" and ": Bad file number"
mean?
>
> 2) Does "No FIN-ACK for FIN" mean that I don't send FIN-ACK after
receiving
> FIN?
>     (I send FIN-ACK whenever I receive FIN)
>
>
> ------------------------------------------
> Test 1.B [out of 10]
> Checks student Tx (server) against reference Rx (client).
>
> Results:  NOT OK
>
> File size differs for /usr/class/cs244a/grading_script/hw2/TESTDATA.0!
> (You downloaded 0 byte(s), expected 110230).
> Client output:
> server: TESTDATA.0,110230,Ok
> sock_io: incorrect length in header, packet dropped!
> : Bad file number
> sock_io: incorrect length in header, packet dropped!
> : Bad file number
> sock_io: incorrect length in header, packet dropped!
> : Bad file number
> sock_io: incorrect length in header, packet dropped!
> : Bad file number
> sock_io: incorrect length in header, packet dropped!
> : Bad file number
>
> ------------------------------------------
>
> Test 1.I [out of 5]
> Checks that FIN is correctly ACKed.
>
> Results:  NOT OK
>
> No FIN-ACK for FIN
>
>
>


.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!aseems
From: Aseem Sharma 
Newsgroups: su.class.cs244a
Subject: 1.B
Date: Thu, 30 Jan 2003 01:10:29 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine18.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043917838 2730 171.64.15.83 (30 Jan 2003 09:10:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4112

Hi Guys,

For 1.B I'm getting the error

No 'rcvd' created!  Client output:
recv: No such file or directory
myconnect: mismatch in peer names  ("0.0.0.0:61879" != "0.0.0.0:0")
myconnect: Bad file number

I can't seem to figure out what possible role our transport layer on
server plays
so that the reference client would throw this error. I thought the above
error had to do with the client going getsockname(), getpeername().

Clues ?



.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: part A requirements, again
Date: Thu, 30 Jan 2003 09:44:11 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043919851 3272 171.64.15.74 (30 Jan 2003 09:44:11 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4113



>In a previous posting, Steve (TA) said that we didn't have to worry
>about packets that were outside or partially outside the receiver window
>for part A of the assignment.  I'm not totally clear on what this means;
>for now, then, if a packet is partially outside the receiver window, can
>we just discard it, even though we're not supposed to handle lost
>packets in part A?  

>In other words, can we assume that the case of a packet overflowing the
>receiver window will never even come up in the testing for part A?

If a packet arrives outside of your receiver window, it's because your
peer violated its sender window--this won't happen in part (A) (assuming
your code isn't buggy!)

.

Path: shelby.stanford.edu!not-for-mail
From: "Noh, Jeonghun" 
Newsgroups: su.class.cs244a
Subject: Test 1.I
Date: Thu, 30 Jan 2003 01:42:15 -0800
Organization: Stanford. EE
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: ohnohoya.stanford.edu
X-Trace: news.Stanford.EDU 1043919868 3277 128.12.151.44 (30 Jan 2003 09:44:28 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4114

I got the error from this test. I wonder I made sure to check whether the
active network terminator received the FIN-ACK before disconnecting the
channel.

Assuming, I definitely created FIN-ACK, sent to the other peer, then the
peer definitely got the FIN-ACK and quit from the loop, what might be the
cause of this error?



--
*********************************
Jeonghun Noh
Dept. of Electrical Engineering
Stanford University
Tel : 1-650-497-6665

*********************************


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Q: Test 1.B and 1.I
Date: Thu, 30 Jan 2003 09:48:11 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043920091 3324 171.64.15.74 (30 Jan 2003 09:48:11 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4115



>2) Does "No FIN-ACK for FIN" mean that I don't send FIN-ACK after receiving
>FIN?
>    (I send FIN-ACK whenever I receive FIN)

Yes.  Be careful that you don't accidentally allocate a packet on the stack
somewhere and then try to transmit it in another function, because I've seen
this cause the behaviour you describe before.  Other than that, I don't have
another theory at the moment.

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 09:56:37 +0000 (UTC)
Lines: 26
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043920597 3515 171.64.15.74 (30 Jan 2003 09:56:38 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4116


>the problem (for 1.C at least) seems to be that since TESTDATA.0 is such a
>large file that the probability of one of the many data packets getting
>dropped/mis-sequenced becomes considerably high.

Not so; I haven't fixed the grading script to disable retransmissions for
part (A) (I don't want to touch this while people are depending on it,
particularly as it's working reasonably for most students), but as far as
reliability goes, since packets are being sent only on the local machine
they should arrive in order and without loss.

>any thought on this? would it be possible for the TAs to make the
>reference server/client available for testing so in event of packets
>getting dropped/mis-sequenced, we can manually test without worrying about
>the test script usage quota?

If packet missequencing/loss were the problem, remember that you can run a
given test submission as many times as you like without this counting against
your quota.  But as I said, if this were the problem it should have been
the problem for the working submitted solutions also.

If you wish to keep multiple submissions around for testing, you can keep
transport.c with the associated .test_key somewhere, and run the test
script in that directory.  (This is a bit of a kludge, but it allows you
to rerun any previous test again without penalty).

.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Re: Test 1.I
Date: Thu, 30 Jan 2003 02:01:24 -0800
Lines: 34
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1043920902 4036 128.12.181.52 (30 Jan 2003 10:01:42 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4117

I still have this same problem and I'm pretty positive that I got a FIN-ACK
after sending FIN and that the FIN-ACK was sent after receiving the
FIN...I'm going to run out of test runs pretty soon.   I wonder if anyone
has passed this test recently?  If so, could you kindly give us a hint as to
how you handled this problem?

Thanks,

Metha

"Noh, Jeonghun"  wrote in message

> I got the error from this test. I wonder I made sure to check whether the
> active network terminator received the FIN-ACK before disconnecting the
> channel.
>
> Assuming, I definitely created FIN-ACK, sent to the other peer, then the
> peer definitely got the FIN-ACK and quit from the loop, what might be the
> cause of this error?
>
>
>
> --
> *********************************
> Jeonghun Noh
> Dept. of Electrical Engineering
> Stanford University
> Tel : 1-650-497-6665
> 
> *********************************
>
>


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 10:06:06 +0000 (UTC)
Lines: 27
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043921166 4358 171.64.15.74 (30 Jan 2003 10:06:06 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4118



>	Just to second this question... I guess the reason you don't
>want people to have unlimited usage of the scripts is so that they
>don't use them as a crutch, but since we don't have access to the
>reference server & client, it's very difficult to figure out what's
>going on -- the first several times I ran the script, I got no output
>because I had all of my debug statements going through dprintf, which
>is disabled when you run the test script. I have a decent idea of what
>it is I need to test, but narrowing down what the bug could be is
>pretty difficult when all you know is "it has to meet specifications,"
>and there's no indication of what specification it fails exactly.

Well, I feel like some 80-year old saying "when I went to school, I had
to walk five miles through the snow...", but anyway... when I took the class,
we weren't given any access to the grading black box :-)

All the test script does is run your client against the reference server
(that is, exactly the same as in your Makefile, but built with the
reference transport.c), and then your server against the reference
client.  It makes sure that the results downloaded are as expected, i.e.
the file is created correctly.  Exposing this only allows unlimited
test runs, it doesn't give you any more information, except perhaps
the chance to put in a bunch more logging output--which is hardly
representative of what you can always do in the real world when implementing
such a specification.

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 10:08:00 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043921280 4388 171.64.15.74 (30 Jan 2003 10:08:00 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4119


>	Just like Mahathi, I botched the ACK numbers, which caused my
>program to completely fail B & C. I fixed it up (thanks to someone
>else's post) and now everything seems to be humming along :) The
>malformed response from server response didn't clue me in, but I guess
>it's hard to make the script have more specific responses.

The script just tries to download a file using the regular client/server
pair, built with your/reference transport layers; as an application, it
has no knowledge of how you're handling the delivery, other than as a
reliable byte stream.  I guess the script could dump some packet log out,
but that would seem to make debugging trivial and an unrealistic exercise.
.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 10:12:26 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1043921546 4509 171.64.15.74 (30 Jan 2003 10:12:26 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4120


>Is it because of dropped packets?  I thought the grading script ensured this
>didn't happen.

It's very difficult to guarantee that it can't happen (since we're using
UDP as the baseline transport, which itself is unreliable), but the chances
of it happening are exceedingly slim since we send packets only on the same
machine.  If the system is heavily loaded, it's possible you might hit an
unexpected retransmission, but again this is uncommon and should be just an
occasional condition.

.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: Re: Test 1.I
Date: Thu, 30 Jan 2003 02:43:20 -0800
Lines: 49
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine39.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043923402 5182 171.64.15.114 (30 Jan 2003 10:43:22 GMT)
X-Complaints-To: 
To: Metha Jeeradit 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4121

I'm getting the same result on 1.I.  I found out I did send FIN before
FIN_ACK, but FIN was sent multiple times.  This was due to
transfer_appl_io was called several times after parent closed its
communication with its child.  I'm not sure why select was triggered on
local data socket multiple times after the parent end's closed.  Are you
seeing the same thing?

Eric


On Thu, 30 Jan 2003, Metha Jeeradit wrote:

> I still have this same problem and I'm pretty positive that I got a FIN-ACK
> after sending FIN and that the FIN-ACK was sent after receiving the
> FIN...I'm going to run out of test runs pretty soon.   I wonder if anyone
> has passed this test recently?  If so, could you kindly give us a hint as to
> how you handled this problem?
>
> Thanks,
>
> Metha
>
> "Noh, Jeonghun"  wrote in message
> 
> > I got the error from this test. I wonder I made sure to check whether the
> > active network terminator received the FIN-ACK before disconnecting the
> > channel.
> >
> > Assuming, I definitely created FIN-ACK, sent to the other peer, then the
> > peer definitely got the FIN-ACK and quit from the loop, what might be the
> > cause of this error?
> >
> >
> >
> > --
> > *********************************
> > Jeonghun Noh
> > Dept. of Electrical Engineering
> > Stanford University
> > Tel : 1-650-497-6665
> > 
> > *********************************
> >
> >
>
>
>


.

Path: shelby.stanford.edu!saga7.Stanford.EDU!aradia
From: Alicia Sheck Ong 
Newsgroups: su.class.cs244a
Subject: Test G
Date: Thu, 30 Jan 2003 04:03:10 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043928207 6656 171.64.15.137 (30 Jan 2003 12:03:27 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4122

Has anyone else not passed this test?  I'm pretty sure that I'm sending a
SYN-ACK after I receive a SYN (at least that's what printf tells me), and
I'm pretty sure the numbering is okay.  So, if I SYN with 245, I SYN-ACK
with seqy and 246.  Not passing test G is making the script skip over
Tests H and I. =0(

Alicia

.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: how to run 1.c
Date: Thu, 30 Jan 2003 10:03:02 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine39.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043949783 16312 171.64.15.114 (30 Jan 2003 18:03:03 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4123

I'm failing 1.c.  It says
../client  -p .server_port -f TESTDATA.0 foo

but, when I run it by my own, my program complains -p is not a valid
tag.  Does any one know how to do it?

Eric

.

Path: shelby.stanford.edu!not-for-mail
From: "Howard Tsai" 
Newsgroups: su.class.cs244a
Subject: Re: Test 1.I
Date: Thu, 30 Jan 2003 10:43:22 -0800
Lines: 66
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: ev-02-lr90f.stanford.edu
X-Trace: news.Stanford.EDU 1043952203 17654 128.12.158.11 (30 Jan 2003 18:43:23 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4124

I don't think you should have the local data socket as part of the select
after the parent has closed it already, otherwise it will fire repeatedly.

Howard


"Eric Chenjian Xu"  wrote in message

> I'm getting the same result on 1.I.  I found out I did send FIN before
> FIN_ACK, but FIN was sent multiple times.  This was due to
> transfer_appl_io was called several times after parent closed its
> communication with its child.  I'm not sure why select was triggered on
> local data socket multiple times after the parent end's closed.  Are you
> seeing the same thing?
>
> Eric
>
>
> On Thu, 30 Jan 2003, Metha Jeeradit wrote:
>
> > I still have this same problem and I'm pretty positive that I got a
FIN-ACK
> > after sending FIN and that the FIN-ACK was sent after receiving the
> > FIN...I'm going to run out of test runs pretty soon.   I wonder if
anyone
> > has passed this test recently?  If so, could you kindly give us a hint
as to
> > how you handled this problem?
> >
> > Thanks,
> >
> > Metha
> >
> > "Noh, Jeonghun"  wrote in message
> > 
> > > I got the error from this test. I wonder I made sure to check whether
the
> > > active network terminator received the FIN-ACK before disconnecting
the
> > > channel.
> > >
> > > Assuming, I definitely created FIN-ACK, sent to the other peer, then
the
> > > peer definitely got the FIN-ACK and quit from the loop, what might be
the
> > > cause of this error?
> > >
> > >
> > >
> > > --
> > > *********************************
> > > Jeonghun Noh
> > > Dept. of Electrical Engineering
> > > Stanford University
> > > Tel : 1-650-497-6665
> > > 
> > > *********************************
> > >
> > >
> >
> >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: debugging and honor code
Date: Thu, 30 Jan 2003 11:16:23 -0800
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043954179 18760 171.64.74.37 (30 Jan 2003 19:16:19 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4125

Yes, as long as it is for debugging your code (and not purely for 
re-engineering our test script) it's perfectly fine.

   Guido

David Seetapun wrote:
> My code doesn't pass test 1.G. Is it ok (honor code-wise) to have the 
> transport layer dump all the traffic to a file during the test run 
> so I can see what the problem is? (This was asked in last years
> new group but I could not see a yes/or answer).

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: syn/syn-ack problem...
Date: Thu, 30 Jan 2003 11:29:46 -0800
Lines: 36
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043954982 18760 171.64.74.37 (30 Jan 2003 19:29:42 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4126

[Forwarded by Guido - your manual news gateway :-)]

Trying to debug the setup handshake:
*Server seems to setup okay.
*Open another window: client elaine19.Stanford.EDU:42351
*Prints first statement from myconnect fine.
*Goes into transport_init
*Parent seems to get past the select-block, clears the FD_ISSET assert,
but does not seem to get anything from the syn_sd[0]: "parent:reading 
peer addr on syn handshake (only 0 bytes)recv: Error 0"
*myconnect, of course, reports a "...missmatch...0.0.0.0:42351"

My child is supposed to send the SYN, then go to the control loop where 
it gets blocked on its own select.  A syn-ack comming in should unblock 
it; once the packet is recognized as a syn-ack, the child-code should 
retrieve the peeraddr and peeraddrlen, then write to syn_sd[1].  Trouble 
seems to hit early-on, as the child appears to send the syn pack (or at 
least return from that function call...which uses 
network_send(ctx->sockfd,...), and progress to the point of calling the
control_loop fuction...child does not seem to ever actually start 
executing anything in control loop???

I'm wondering most how the parent got past its select block?
Also wondering if I'm not understanding the provided code, as it's 
really not getting very far into my stuff, if at all?

I've walked through the parent step-by-step in GBB, and everyhting looks
fine, except--again--it appears to go straight through select without
waiting for anything to be been written to syn_sd[1].  I have not yet 
been able to get gdb to attach to the child.

Suggested approaches to further track this down would be appreciated.

Thanks...Keith


.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: STCP tcphdr ports
Date: Thu, 30 Jan 2003 11:42:37 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043955759 19931 171.64.15.84 (30 Jan 2003 19:42:39 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4127

1.  Do we have to set the th_sport and th_dport?  Where do we get the
values? Using getpeername() and gethostname()?  Do we not have to worry about
them?

2.  When we call network_send, we have to send the packet as
header+payload, correct?


3.  From how I read the assignment spec, we only use 4 of the fields of
tcphdr, plus a data_len field?

Thanks for any info.

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: 1.c
Date: Thu, 30 Jan 2003 12:26:31 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043958392 21825 171.64.15.87 (30 Jan 2003 20:26:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4128

I'm passing all the other cases, except for 1.c.  The client's asking for
TESTDATA.0 and foo.  My program timed out.  I'm guessing foo is the
trouble maker, since I passed all the other tests that use TESTDATA.0.
What is foo?  Is it a non-existing file?  I tested non-existsing files,
but my program seems to handle them well.

Eric



.

Path: shelby.stanford.edu!epic27.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: cksum error?
Date: Thu, 30 Jan 2003 20:26:33 +0000 (UTC)
Lines: 25
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: epic27.stanford.edu
X-Trace: news.Stanford.EDU 1043958393 21829 171.64.15.60 (30 Jan 2003 20:26:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4129

Can you please let me know what exactly the problem was?
thanks!



>Matthew guessed it right.. I was using strncpy() while copying buffer read
>from application to the send packet .. and so it was not working. Hope this
>helps!

>"Pavan"  wrote in message

>> I am getting  the same problem too.. pls mail back if you could correct
>> that!
>>
>> "Chandrakala Kappanna"  wrote in message
>> 
>> > My implementation works fine for transfering  text files.
>> > The cksum output is correct.
>> >
>> > but fails for the binary files.
>> > any pointers?
>>
>>


.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: STCP tcphdr ports
Date: Thu, 30 Jan 2003 20:32:51 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine8.stanford.edu
X-Trace: news.Stanford.EDU 1043958771 22038 171.64.15.73 (30 Jan 2003 20:32:51 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4130


>1.  Do we have to set the th_sport and th_dport?  Where do we get the
>values? Using getpeername() and gethostname()?  Do we not have to worry about
>them?

Please see the preceding responses to this on the newsgroup.

>2.  When we call network_send, we have to send the packet as
>header+payload, correct?

Correct.

>3.  From how I read the assignment spec, we only use 4 of the fields of
>tcphdr, plus a data_len field?

Four fields including the data_len.
.

Path: shelby.stanford.edu!epic27.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: cksum error?
Date: Thu, 30 Jan 2003 20:35:21 +0000 (UTC)
Lines: 31
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: epic27.stanford.edu
X-Trace: news.Stanford.EDU 1043958921 22094 171.64.15.60 (30 Jan 2003 20:35:21 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4131

OKAY!!!!
I fixed it.

Matthew was right.... once I used memcpy things were fine.

thanks for your help.
>Can you please let me know what exactly the problem was?
>thanks!



>>Matthew guessed it right.. I was using strncpy() while copying buffer read
>>from application to the send packet .. and so it was not working. Hope this
>>helps!

>>"Pavan"  wrote in message

>>> I am getting  the same problem too.. pls mail back if you could correct
>>> that!
>>>
>>> "Chandrakala Kappanna"  wrote in message
>>> 
>>> > My implementation works fine for transfering  text files.
>>> > The cksum output is correct.
>>> >
>>> > but fails for the binary files.
>>> > any pointers?
>>>
>>>


.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: how to run 1.c
Date: Thu, 30 Jan 2003 20:35:34 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine8.stanford.edu
X-Trace: news.Stanford.EDU 1043958934 22100 171.64.15.73 (30 Jan 2003 20:35:34 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4132


>./client  -p .server_port -f TESTDATA.0 foo

>but, when I run it by my own, my program complains -p is not a valid
>tag.  Does any one know how to do it?

You don't need to; all this does is use the port number written to .server_port
for the connection.  When running manually, you'd do the usual
client ... elaine25:12345

.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: cksum error?
Date: Thu, 30 Jan 2003 12:37:14 -0800
Lines: 10
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043959035 22092 128.12.187.58 (30 Jan 2003 20:37:15 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4133

On Thu, 30 Jan 2003 20:26:33 +0000 (UTC), 
(Chandrakala Kappanna) wrote:

>Can you please let me know what exactly the problem was?
>thanks!

	I think the problem was that you can't use strncpy, because
that copies a null-terminated (with the character \0) string. Since
binary files are interpreted differently, they could have this
character everywhere, so you're better off using memcpy.
.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1.c
Date: Thu, 30 Jan 2003 20:38:04 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine8.stanford.edu
X-Trace: news.Stanford.EDU 1043959084 22194 171.64.15.73 (30 Jan 2003 20:38:04 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4134


>I'm passing all the other cases, except for 1.c.  The client's asking for
>TESTDATA.0 and foo.  My program timed out.  I'm guessing foo is the
>trouble maker, since I passed all the other tests that use TESTDATA.0.
>What is foo?  Is it a non-existing file?  I tested non-existsing files,
>but my program seems to handle them well.

No--
"foo" is just an unfortunate hack to appease the client in the number of
command-line arguments; it isn't used at all.  You can ignore this.
.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 12:44:06 -0800
Lines: 23
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043959447 22360 128.12.187.58 (30 Jan 2003 20:44:07 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4135


>Well, I feel like some 80-year old saying "when I went to school, I had
>to walk five miles through the snow...", but anyway... when I took the class,
>we weren't given any access to the grading black box :-)
>
>All the test script does is run your client against the reference server
>(that is, exactly the same as in your Makefile, but built with the
>reference transport.c), and then your server against the reference
>client.  It makes sure that the results downloaded are as expected, i.e.
>the file is created correctly.  Exposing this only allows unlimited
>test runs, it doesn't give you any more information, except perhaps
>the chance to put in a bunch more logging output--which is hardly
>representative of what you can always do in the real world when implementing
>such a specification.

	Yeah, I see your point. It was just frustrating to not get any
output; in my case, all I knew was that my server timed out somewhere.
Would it be possible to have scripts not disable the dprintf? I
started using dprintf because there was that blurb about being careful
of where to print to, and so I used up a testing case changing all the
dprintfs to an fprintf to stderr. I don't know if anyone else had the
same problem (I seem to be lucky :p), though, so it might not be worth
changing and now I know to put all my debug info into fprintf :)
.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: syn/syn-ack problem...
Date: Thu, 30 Jan 2003 20:44:07 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine8.stanford.edu
X-Trace: news.Stanford.EDU 1043959447 22361 171.64.15.73 (30 Jan 2003 20:44:07 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4136


>Trying to debug the setup handshake:
>*Server seems to setup okay.
>*Open another window: client elaine19.Stanford.EDU:42351
>*Prints first statement from myconnect fine.
>*Goes into transport_init
>*Parent seems to get past the select-block, clears the FD_ISSET assert,
>but does not seem to get anything from the syn_sd[0]: "parent:reading 
>peer addr on syn handshake (only 0 bytes)recv: Error 0"
>*myconnect, of course, reports a "...missmatch...0.0.0.0:42351"

I've seen this behaviour in a few cases, i.e. a select() unblocking
unexpectedly.  In all cases so far it was caused by a memory error
(e.g. a bad select() call elsewhere).  Does Purify show any problems?

.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 20:50:53 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References:       
NNTP-Posting-Host: elaine8.stanford.edu
X-Trace: news.Stanford.EDU 1043959853 22619 171.64.15.73 (30 Jan 2003 20:50:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4137


>	Yeah, I see your point. It was just frustrating to not get any
>output; in my case, all I knew was that my server timed out somewhere.
>Would it be possible to have scripts not disable the dprintf? I
>started using dprintf because there was that blurb about being careful
>of where to print to, and so I used up a testing case changing all the
>dprintfs to an fprintf to stderr. I don't know if anyone else had the
>same problem (I seem to be lucky :p), though, so it might not be worth
>changing and now I know to put all my debug info into fprintf :)

Well, not easily, because the network layer used in grading prints a lot of
output on its own, which is used by the script to check correctness.
So this is something I don't want to touch (and break) right now.  Thanks
for the input though; perhaps I'll try and make this easier for people for
next year.
.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test G
Date: Thu, 30 Jan 2003 20:56:52 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine8.stanford.edu
X-Trace: news.Stanford.EDU 1043960212 23102 171.64.15.73 (30 Jan 2003 20:56:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4138


>Has anyone else not passed this test?  I'm pretty sure that I'm sending a
>SYN-ACK after I receive a SYN (at least that's what printf tells me), and
>I'm pretty sure the numbering is okay.  So, if I SYN with 245, I SYN-ACK
>with seqy and 246.  Not passing test G is making the script skip over
>Tests H and I. =0(

I assume you're getting the "No SYN-ACK for SYN...?"

If you're positive you're sending (or think you're sending) a SYN-ACK,
have you checked for memory errors in Purify (e.g. returning frames
allocated on the stack)?  Otherwise I'd have to look at the code/logs
to offer any more constructive suggestions.

.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: Test G
Date: Thu, 30 Jan 2003 21:42:09 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine6.stanford.edu
X-Trace: news.Stanford.EDU 1043962929 24596 171.64.15.71 (30 Jan 2003 21:42:09 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4139

were you able to figure out the problem?
I am stuck here too.

thanx,
ceekay

Alicia Sheck Ong  writes:

>Has anyone else not passed this test?  I'm pretty sure that I'm sending a
>SYN-ACK after I receive a SYN (at least that's what printf tells me), and
>I'm pretty sure the numbering is okay.  So, if I SYN with 245, I SYN-ACK
>with seqy and 246.  Not passing test G is making the script skip over
>Tests H and I. =0(

>Alicia

.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: submit to which TA
Date: Thu, 30 Jan 2003 13:52:48 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043963571 24949 128.12.196.91 (30 Jan 2003 21:52:51 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4140

Maybe I miss some information, however I'm confused to which TA I should
submit my HW#2A assignment since I haven't received any e-mail notifiying me
about this.

Thanks,
Honggo



.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: submit to which TA
Date: Thu, 30 Jan 2003 21:55:47 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1043963747 25032 171.64.15.117 (30 Jan 2003 21:55:47 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4141


>Maybe I miss some information, however I'm confused to which TA I should
>submit my HW#2A assignment since I haven't received any e-mail notifiying me
>about this.

I just sent out an e-mail to remind people of their assigned TA.

.

Path: shelby.stanford.edu!epic3.Stanford.EDU!mmahathi
From: Mahathi Sai Prasanna Mahabhashyam 
Newsgroups: su.class.cs244a
Subject: Re: Test G & Re: Test 1.I
Date: Thu, 30 Jan 2003 13:58:22 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: epic3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043963904 25148 171.64.15.36 (30 Jan 2003 21:58:24 GMT)
X-Complaints-To: 
To: Mahathi Sai Prasanna Mahabhashyam 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4142

Hi,
   I had a similar problem. When I sent the SYn and SYNACK messages, I
sent the entire packet i.e, header+ payload. That was giving the
problem. If you just send the header, it is working fine with the refrence
implementation. Are you doing the same thing. This solved even the case
when FIN was being ACKed. Basically, the logic is that when you are
sending control messages or ACKs, just send the Header alone.

Hope this solves the problem,
Cheers,
Mahathi.

 On Thu, 30 Jan 2003, Alicia Sheck Ong wrote:

> Has anyone else not passed this test?  I'm pretty sure that I'm sending a
> SYN-ACK after I receive a SYN (at least that's what printf tells me), and
> I'm pretty sure the numbering is okay.  So, if I SYN with 245, I SYN-ACK
> with seqy and 246.  Not passing test G is making the script skip over
> Tests H and I. =0(
>
> Alicia
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Noh, Jeonghun" 
Newsgroups: su.class.cs244a
Subject: Re: Test 1.I
Date: Thu, 30 Jan 2003 14:13:34 -0800
Organization: Stanford. EE
Lines: 33
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: dnab4081eb.stanford.edu
X-Trace: news.Stanford.EDU 1043964949 26094 171.64.129.235 (30 Jan 2003 22:15:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4143

Ok. I found out I was accidentally sending FIN several times, forgetting to
set the connection_state properly. Now I got the OK sign from the script.
Good.

For those who get the same error and can make sure they send FIN and FIN-ACK
pair, just check they are sent once respectively, though we may send FIN
more than once due to the loss of the packet.


"Noh, Jeonghun"  wrote in message

> I got the error from this test. I wonder I made sure to check whether the
> active network terminator received the FIN-ACK before disconnecting the
> channel.
>
> Assuming, I definitely created FIN-ACK, sent to the other peer, then the
> peer definitely got the FIN-ACK and quit from the loop, what might be the
> cause of this error?
>
>
>
> --
> *********************************
> Jeonghun Noh
> Dept. of Electrical Engineering
> Stanford University
> Tel : 1-650-497-6665
> 
> *********************************
>
>


.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: Test G & Re: Test 1.I
Date: Thu, 30 Jan 2003 22:16:45 +0000 (UTC)
Lines: 29
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine6.stanford.edu
X-Trace: news.Stanford.EDU 1043965005 26123 171.64.15.71 (30 Jan 2003 22:16:45 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4144


Yes. Just sending the header worked for me.
But my test still fails for FIN-FIN ACK :(
Mahathi Sai Prasanna Mahabhashyam  writes:

>Hi,
>   I had a similar problem. When I sent the SYn and SYNACK messages, I
>sent the entire packet i.e, header+ payload. That was giving the
>problem. If you just send the header, it is working fine with the refrence
>implementation. Are you doing the same thing. This solved even the case
>when FIN was being ACKed. Basically, the logic is that when you are
>sending control messages or ACKs, just send the Header alone.

>Hope this solves the problem,
>Cheers,
>Mahathi.

> On Thu, 30 Jan 2003, Alicia Sheck Ong wrote:

>> Has anyone else not passed this test?  I'm pretty sure that I'm sending a
>> SYN-ACK after I receive a SYN (at least that's what printf tells me), and
>> I'm pretty sure the numbering is okay.  So, if I SYN with 245, I SYN-ACK
>> with seqy and 246.  Not passing test G is making the script skip over
>> Tests H and I. =0(
>>
>> Alicia
>>
>>

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: SYN sent twice?
Date: Thu, 30 Jan 2003 14:18:06 -0800
Lines: 53
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine31.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043965088 26209 171.64.15.106 (30 Jan 2003 22:18:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4145

Very weird thing.

On the server side, after it received a SYN and responded with a SYN_ACK,
it immediately received a SYN again, except that this time it is
disguised as a "data" packet

I put a printf before every call of network_send() on the client side, yet
couldn't catch anywhere I sent such a data packet. I suspect this "data"
packet is the previous SYN that somehow got resent. Of course I can
see the sequence number of this "data" packet is old and discard it. But I
am curious why should this have happened. The following are output to
screen on client and server side.

Client side
===========

elaine31:~/Courses/CS244a/PA2.A> ./client -f server.c
elaine24.stanford.edu:55956

####Initiating a new connection now to 171.64.15.99:55956#### (sockfd=4)
transport_init: child process, active mode.
SendSyn: sending SYN with th_seq = 80 ...
SendSyn: successfully sent SYN with th_seq = 80.


Server side
===========

elaine24:~/Courses/CS244a/PA2.A> ./server
Server's address is elaine24.Stanford.EDU:55956

####Accepting a new connection now at port# 55956#### (sockfd=3)
transport_init: child process, passive mode.
           waiting for SYN packet ...
control_loop: sockfd = 3, local_data_sd = 5, max_fd = 3.
control_loop: Activity on sockfd = 3.
HandleSynPacket: received SYN with th_seq = 80.
SendSyn: sending SYN_ACK with th_seq = 182, th_ack = 81 ...
SendSyn: sent SYN_ACK successfully with th_seq = 182, th_ack = 81.
Connection established! ******************
HandleSynPacket: sending peername to parent process...
HandleSynPacket: sent peername to parent process successfully.
HandleDataPacket: received DATA packet with th_seq = 80, data_len = 0.
SendDataAck: sending DATA_ACK with th_ack = 80 ...
SendDataAck: sent DATA_ACK successfully with th_ack = 80.
control_loop: sockfd = 3, local_data_sd = 5, max_fd = 5.

SYN handshake completed, data_sd=6
connected to 171.64.15.106 at port 64103




.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: Re: 1.c
Date: Thu, 30 Jan 2003 14:26:58 -0800
Lines: 25
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1043965620 26513 128.12.79.199 (30 Jan 2003 22:27:00 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4146

I'm running in to the exact same problem...the hand shake happens, then the
application never sends any data to the client. so the output of the client
is just:

SYN handshake completed, data_sd=6

then nothing until it times out. This doesn't happen when I run my client
against my server. I've been looking at this for a good two hours now...has
anyone else run into something similar?


"Matthew Jonathan Holliman"  wrote in message

>
> >I'm passing all the other cases, except for 1.c.  The client's asking for
> >TESTDATA.0 and foo.  My program timed out.  I'm guessing foo is the
> >trouble maker, since I passed all the other tests that use TESTDATA.0.
> >What is foo?  Is it a non-existing file?  I tested non-existsing files,
> >but my program seems to handle them well.
>
> No--
> "foo" is just an unfortunate hack to appease the client in the number of
> command-line arguments; it isn't used at all.  You can ignore this.


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: Re: syn/syn-ack problem...
Date: Thu, 30 Jan 2003 22:37:26 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 7
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1043966246 26807 171.64.15.80 (30 Jan 2003 22:37:26 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4147

Well, it's not clear that I'm doing everything right for purify.  On the
server-side purify seems normal (i.e., opens windows for the parent and
child, as I detenv per the FAQ), and reports essentially nothing at
all. In order to get a client.purify, I make client.purify separately from
make server.purify, but client.purify will not run (even without args, it
won't even give the command-line syntax)???

.

Path: shelby.stanford.edu!not-for-mail
From: Fritz Budiyanto 
Newsgroups: su.class.cs244a
Subject: Application Layer never read the data
Date: Thu, 30 Jan 2003 22:52:26 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine43.stanford.edu
X-Trace: news.Stanford.EDU 1043967146 27207 171.64.15.118 (30 Jan 2003 22:52:26 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4148

Hi,

Can we assume application layer always read the data? 
Because if appl layer sleep forever, and never read the data, recv socket
buffer will be full, and transport cannot send any data to the appl layer,
and since there is no flow control, we might have problem.

Any thought on this?

thanks,
Fritz
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Window question
Date: Thu, 30 Jan 2003 15:39:03 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043969956 28885 171.64.15.82 (30 Jan 2003 23:39:16 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4149

According to the STCP protocol we should never send data ouside the
sending window. Does this constraint also apply to packets that have no
data. For example, if my sending window is completely full, is it still
legal to send an ACK packet, or do I need to wait until the receiver
ACKS some more data first?

-Tim



.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: print_congestion_window_and_estimatedRTT
Date: Thu, 30 Jan 2003 15:43:32 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043970213 29025 128.12.85.0 (30 Jan 2003 23:43:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4150

I'm sure this has probably already been answered somewhere, but I just
wanted to confirm that we don't need to do anything with this function for
part a. None of the tests seem to depend on it.

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: Re: 1.B
Date: Thu, 30 Jan 2003 15:54:37 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1043970878 29379 128.12.22.55 (30 Jan 2003 23:54:38 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4151

yeah. I'm having the same problem.
I use network_peer_name after a connection has been established, and it
seems to work fine when I run my
client and server together.. but it errors in the test script.

did you find out what was wrong?



"Aseem Sharma"  wrote in message

> Hi Guys,
>
> For 1.B I'm getting the error
>
> No 'rcvd' created!  Client output:
> recv: No such file or directory
> myconnect: mismatch in peer names  ("0.0.0.0:61879" != "0.0.0.0:0")
> myconnect: Bad file number
>
> I can't seem to figure out what possible role our transport layer on
> server plays
> so that the reference client would throw this error. I thought the above
> error had to do with the client going getsockname(), getpeername().
>
> Clues ?
>
>
>


.

Path: shelby.stanford.edu!elaine29.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: testkey usage
Date: Thu, 30 Jan 2003 23:59:01 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine29.stanford.edu
X-Trace: news.Stanford.EDU 1043971141 29525 171.64.15.104 (30 Jan 2003 23:59:01 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4152

Can someone let me knwo how to re-run the test using the
testkey?

thanks!


.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Application Layer never read the data
Date: Fri, 31 Jan 2003 00:57:25 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043974645 1946 171.64.15.70 (31 Jan 2003 00:57:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4153


>Can we assume application layer always read the data? 
>Because if appl layer sleep forever, and never read the data, recv socket
>buffer will be full, and transport cannot send any data to the appl layer,
>and since there is no flow control, we might have problem.

Correct.  In a normal socket layer, you know when data is requested, but
because of the pipe we're using, you can't tell here.  Just assume that
when you write data to the pipe, it's read by the application.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: What is cksum exactly?
Date: Thu, 30 Jan 2003 16:59:16 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043974759 1988 171.64.15.115 (31 Jan 2003 00:59:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4154

It is not the size of the file? Sum of all the packets? Not likely. Please
advice. Thanks.

Jichun

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Window question
Date: Fri, 31 Jan 2003 01:00:48 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043974848 2085 171.64.15.70 (31 Jan 2003 01:00:48 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4155


>According to the STCP protocol we should never send data ouside the
>sending window. Does this constraint also apply to packets that have no
>data. For example, if my sending window is completely full, is it still
>legal to send an ACK packet, or do I need to wait until the receiver
>ACKS some more data first?

Yes, you can still send ACK packets (and if you didn't, nasty deadlocks could
happen); an ACK packet doesn't change your sequence number or window size in
any way.
.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: print_congestion_window_and_estimatedRTT
Date: Fri, 31 Jan 2003 01:01:13 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043974873 2104 171.64.15.70 (31 Jan 2003 01:01:13 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4156


>I'm sure this has probably already been answered somewhere, but I just
>wanted to confirm that we don't need to do anything with this function for
>part a. None of the tests seem to depend on it.

Correct.
.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: What is cksum exactly?
Date: Fri, 31 Jan 2003 01:02:39 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043974959 2135 171.64.15.70 (31 Jan 2003 01:02:39 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4157


>It is not the size of the file? Sum of all the packets? Not likely. Please
>advice. Thanks.

It's a CRC of the file; we'll cover this towards the end of the class, but
it's a commonly used means of detecting errors in files.  In this case,
cksum gives a integer result for a file, which almost always changes if the
file's contents change.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: What happens if sending packets of fixed size?
Date: Thu, 30 Jan 2003 17:02:51 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043974972 2148 171.64.15.115 (31 Jan 2003 01:02:52 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4158

I put a STCP_Header and a char[536] together to make a STCPPacket struct
and transmit it not matter how big the payload actually is. I know this
probably is not the best design. But could it be the cause of failing 1.C?

Please enlighten. Thanks.

Jichun


Test 1.C [out of 10]
Checks reference transmitter against student receiver.

Results:  NOT OK

Checksum differs for file /usr/class/cs244a/grading_script/hw2/TESTDATA.1!
(Your cksum: 999546338, expected 4265638025).
Client output:
server: TESTDATA.1,299328,Ok


.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: testkey usage
Date: Fri, 31 Jan 2003 01:06:21 +0000 (UTC)
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043975181 2211 171.64.15.70 (31 Jan 2003 01:06:21 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4159


>Can someone let me knwo how to re-run the test using the
>testkey?

When you submit files for testing, the script hashes them and stores
the result in a file called .test_key in the same directory.  If you
resubmit the test without having changed your code in the meantime,
it again hashes the input files; if the hash matches your stored
..test_key, the test proceeds without using one of your daily quota.
This avoids the problems we had last year with people "wasting" test
runs due to intermittent FTP server failures, perhaps random failures
in their STCP implementation, etc.

So, if you haven't changed the code, you can just run test_code.pl again.
If you want to save a tested implementation for later re-testing, you can
save the transport.c and corresponding .test_key somewhere (in the same
directory together), and later run test_code.pl in there again.  It
also shouldn't count against your quota.

.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: 1B and 1C response
Date: Thu, 30 Jan 2003 17:07:30 -0800
Lines: 32
Distribution: su
Message-ID: 
References:       
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043975232 2277 128.12.72.54 (31 Jan 2003 01:07:12 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4160


Peter Lai wrote:
> 	Yeah, I see your point. It was just frustrating to not get any
> output; in my case, all I knew was that my server timed out somewhere.
> Would it be possible to have scripts not disable the dprintf? I
> started using dprintf because there was that blurb about being careful
> of where to print to, and so I used up a testing case changing all the
> dprintfs to an fprintf to stderr. I don't know if anyone else had the
> same problem (I seem to be lucky :p), though, so it might not be worth
> changing and now I know to put all my debug info into fprintf :)

I agree that debugging output would be really nice, but as at least a 
partial fix I've added these lines to the top of transport.c:

#ifndef DEBUG
#define DEBUG
#endif

They'll force the debugging information to get written to the output. 
As another note (for the TAs), not having that line produces a LOT of 
warnings on compile, mainly because the macro expands to something like
    ("%s", string);
which C doesn't particularly like.

But with those three preprocessor lines, I've successfully passed code 
through the testing script.  Of course, I'm taking it out before 
submitting....  Maybe this'll help your debugging, maybe not, as even 
that hack doesn't seem to work for 1.B, but it does produce output for 
1.C, and I've passed all except 1.C using that code to turn DEBUG on.

-Kevin

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: What happens if sending packets of fixed size?
Date: Fri, 31 Jan 2003 01:14:41 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043975681 2724 171.64.15.70 (31 Jan 2003 01:14:41 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4161


>I put a STCP_Header and a char[536] together to make a STCPPacket struct
>and transmit it not matter how big the payload actually is. I know this
>probably is not the best design. But could it be the cause of failing 1.C?

Your SYN/FIN packets shouldn't contain any payload, i.e. data length of
zero.  Other packets should just be of the length corresponding to the
data you're actually sending.  Several people have said the former causes
problems with the reference implementation (although looking at the code,
it's not obvious why), and the latter seems like better style, and is
easy enough to implement.

The other main thing to watch out for would probably be proper sequence
number/ACK implementation.
.

Path: shelby.stanford.edu!not-for-mail
From: "Bina Vasavda" 
Newsgroups: su.class.cs244a
Subject: malloc/realloc/free and memcpys
Date: Thu, 30 Jan 2003 18:02:08 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: ev-01-hos4d.stanford.edu
X-Trace: news.Stanford.EDU 1043978249 4378 128.12.154.59 (31 Jan 2003 01:57:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4162

Hi, for part b) as far as design points are concerned (will we get points
off using either approach?) is there any difference between using a single
buffer with many memcpys or dynamically creating buffers on a packet by
packet basis (resulting in many mallocs and frees)?  Or is either approach
ok?
Thanks,
Bina


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: setitimer
Date: Thu, 30 Jan 2003 18:22:02 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1043979709 5420 128.12.195.69 (31 Jan 2003 02:21:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4163

I tried to use setitimer() to create an alarm to perform retransmission. But
when I try to set the alarm, setitimer () failed, and I get this from
perror:

Resource temporarily unavailable

What is the problem, and is there another timer/alarm mechanism I should
use?

-myl



.

Path: shelby.stanford.edu!not-for-mail
From: Yashar Ganjali 
Newsgroups: su.class.cs244a
Subject: Guido's Office Hours
Date: Thu, 30 Jan 2003 19:03:52 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: obi.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1043982232 6636 171.64.74.52 (31 Jan 2003 03:03:52 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, pe
Xref: shelby.stanford.edu su.class.cs244a:4164

Hi everybody,

It seems that Guido will be a little late for his office hours. His 
office hours will start at 7:20 (same place) today. Sorry for any 
inconvenience this may have caused.

--Yashar


.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Failing/passing 1.C randomly
Date: Thu, 30 Jan 2003 20:41:06 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine8.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043988071 9415 171.64.15.73 (31 Jan 2003 04:41:11 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4165

Test 1.C is the only thing preventing me from submitting PA2a. Just now,
after some trivial work, it passed. Before I could breathe a sigh of
relief, I ran the test script another time, without even costing me a
credit, it failed again.

What could have caused the randomness? Dropped packets? Packets arriving
out of order? Packets resent? These issues are required in part (a).

Or could there be other reasons?

Jichun

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: Recevier buffer and retransmission
Date: Fri, 31 Jan 2003 04:44:29 +0000 (UTC)
Organization: Stanford University
Lines: 26
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: epic16.stanford.edu
X-Trace: news.Stanford.EDU 1043988269 9549 171.64.15.49 (31 Jan 2003 04:44:29 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4166


In article 
  (Matthew Jonathan Holliman) writes:
> Nishant Verman  writes:
> 
> >did you find out from Matthew what this testcase is doing?
> >I'm also failing on this but can't figure out what they're actually
> >testing in this.
> 
> The test case is fairly innocuous; it just looks for successive ACKs
> that exceed the window length.  (I can't test an invalid receiver window
> more comprehensively until part (b), due to the in-order packet delivery
> constraint in part (a)).
> 
> I haven't had a chance to track down what's going on yet, but I'll post on
> here if I find out what's causing this behaviour.  (If you could send me your
> code also, it would be another data point to look at).
> 

Again, my retransmit code is intermittently failing this one. Is the following possible.

I send some data and the receiver acks it. Before I get the ack I resend the data. 
So the receiver will ack the dup data. Now I send some more data which causes the receive
window to become a whole contiguous chunk. Now when I send the ACK for the large chunk I will
have sent two ACKS which are father apart than the receive window which is what I believe the test
looks for.
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: test 1.I and retrans again
Date: Fri, 31 Jan 2003 04:51:05 +0000 (UTC)
Organization: Stanford University
Lines: 30
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: epic16.stanford.edu
X-Trace: news.Stanford.EDU 1043988665 9941 171.64.15.49 (31 Jan 2003 04:51:05 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4167


In article 
  (Matthew Jonathan Holliman) writes:
> 
> >This test is about FIN-ACKS for FIN. I have started to implement some of
> >the retransmission stuff. So depending on various things I may send more than
> >one FIN packet. But I will only get one FINACK back. I have a feeling this is
> >causing me to intermittently fail 1.I as there will be some unmatched FIN
> >packets in the stream if I have has to retransmit. Happily I have frozen a 
> >transport.c which has no retransmission stuff and this seems to pass all the
> >HW2a tests on every submitted run. 
> 
> >So my question is can a solution for 2b fail the 2a script for the above reason?
> 
> It shouldn't (and mine doesn't).  The test verifies that you receive a
> later FIN-ACK than a given FIN, and that you don't send a FIN-ACK without
> a preceding FIN.  It's not too picky.  I suspect a bug in your current
> retransmission implementation.
>

It seems to me that if there is a retrans mechanism in place the following could occur
I send a FIN and the peer sends a FINACK. Suppose this takes RTT. Then if my retrans < RTT
then I could send another FIN and so get a FIN FINACK FIN sequence which would fail the test.


 
> >If so remember to freeze a 2a solution.
> 
> This is a good idea anyway, in case you discover a bug later on this week
> and need to resubmit your part (a) solution...
.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Re: Failing/passing 1.C randomly
Date: Thu, 30 Jan 2003 21:07:44 -0800
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043989668 10535 128.12.196.91 (31 Jan 2003 05:07:48 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4168

Yes, I also have the same problem.
Sometimes I passed and sometimes I failed test 1.C.
For the other tests, I also succesfully passed every times.

"Jichun Zhu"  wrote in message

> Test 1.C is the only thing preventing me from submitting PA2a. Just now,
> after some trivial work, it passed. Before I could breathe a sigh of
> relief, I ran the test script another time, without even costing me a
> credit, it failed again.
>
> What could have caused the randomness? Dropped packets? Packets arriving
> out of order? Packets resent? These issues are required in part (a).
>
> Or could there be other reasons?
>
> Jichun
>


.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Gettign rcvd files from tests
Date: Thu, 30 Jan 2003 21:19:35 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043990377 10948 171.64.15.82 (31 Jan 2003 05:19:37 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4169

I know this came up earlier on the newsgroup, but was left a bit open:

Is there any way we can get the rcvd files from our test run so we can try
to use them to debug checksum problems?

Also, is it considered in violation of the honor code to exchange binary
implementations of clients/servers with other students in order to help to
debug/verify our implementations of the protocol?

Thanks,
Tim



.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test 1.I and retrans again
Date: Fri, 31 Jan 2003 05:19:52 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043990392 10955 171.64.15.70 (31 Jan 2003 05:19:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4170



>It seems to me that if there is a retrans mechanism in place the following could occur
>I send a FIN and the peer sends a FINACK. Suppose this takes RTT. Then if my retrans < RTT
>then I could send another FIN and so get a FIN FINACK FIN sequence which would fail the test.

Yes, but this test isn't run in part B.

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: malloc/realloc/free and memcpys
Date: Fri, 31 Jan 2003 05:20:52 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043990452 11026 171.64.15.70 (31 Jan 2003 05:20:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4171


>Hi, for part b) as far as design points are concerned (will we get points
>off using either approach?) is there any difference between using a single
>buffer with many memcpys or dynamically creating buffers on a packet by
>packet basis (resulting in many mallocs and frees)?  Or is either approach
>ok?

Either approach is acceptable, per the comments in the review section
and on the newsgroup previously.

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: setitimer
Date: Fri, 31 Jan 2003 05:21:46 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043990506 11037 171.64.15.70 (31 Jan 2003 05:21:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4172


>What is the problem, and is there another timer/alarm mechanism I should
>use?

You can use the timeout argument to poll()/select().

.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: Re: Failing/passing 1.C randomly
Date: Thu, 30 Jan 2003 21:21:54 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043990515 11041 171.64.15.82 (31 Jan 2003 05:21:55 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4173

Are you failing this test via a bad checksum or otherwise. I'm wondering
if I have the same problem, but don't want to waste percious test script
runs proving it works "most of the time"

Thanks,
Tim

On Thu, 30 Jan 2003, Jichun Zhu wrote:

> Test 1.C is the only thing preventing me from submitting PA2a. Just now,
> after some trivial work, it passed. Before I could breathe a sigh of
> relief, I ran the test script another time, without even costing me a
> credit, it failed again.
>
> What could have caused the randomness? Dropped packets? Packets arriving
> out of order? Packets resent? These issues are required in part (a).
>
> Or could there be other reasons?
>
> Jichun
>
>



.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Recevier buffer and retransmission
Date: Fri, 31 Jan 2003 05:25:38 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043990738 11113 171.64.15.70 (31 Jan 2003 05:25:38 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4174


>Again, my retransmit code is intermittently failing this one. Is the following possible.

>I send some data and the receiver acks it. Before I get the ack I resend the data. 
>So the receiver will ack the dup data. Now I send some more data which causes the receive
>window to become a whole contiguous chunk. Now when I send the ACK for the large chunk I will
>have sent two ACKS which are father apart than the receive window which is what I believe the test
>looks for.

No; your "more data" can only reach the end of the sender window, i.e. you
couldn't have sent an amount that when ACKed would be more than 3072 bytes
ahead of the last ACK sent by the receiver.

If you don't figure out what's going on, please send me the code.

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Gettign rcvd files from tests
Date: Fri, 31 Jan 2003 05:31:49 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043991109 11339 171.64.15.70 (31 Jan 2003 05:31:49 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4175


>Is there any way we can get the rcvd files from our test run so we can try
>to use them to debug checksum problems?

Not without changing the scripts, which I'm loathe to do.

>Also, is it considered in violation of the honor code to exchange binary
>implementations of clients/servers with other students in order to help to
>debug/verify our implementations of the protocol?

I think so.  This gives on-campus students quite an advantage over SITN
students.

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: syn/syn-ack problem...
Date: Fri, 31 Jan 2003 05:33:22 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043991202 11390 171.64.15.70 (31 Jan 2003 05:33:22 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4176


>Well, it's not clear that I'm doing everything right for purify.  On the
>server-side purify seems normal (i.e., opens windows for the parent and
>child, as I detenv per the FAQ), and reports essentially nothing at
>all. In order to get a client.purify, I make client.purify separately from
>make server.purify, but client.purify will not run (even without args, it
>won't even give the command-line syntax)???

One thought--
for some reason, client.purify doesn't run on all of the elaines (e.g.
I think it gives a strange error message on elaine5).  it seems to work
on elaine42, as I recall, and some others also.

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1.B
Date: Fri, 31 Jan 2003 05:37:16 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043991436 11458 171.64.15.70 (31 Jan 2003 05:37:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4177


>yeah. I'm having the same problem.
>I use network_peer_name after a connection has been established, and it
>seems to work fine when I run my
>client and server together.. but it errors in the test script.

>did you find out what was wrong?

I've seen this error happen for other reasons also, e.g. if the SYN
handshake isn't handled correctly with the reference client/server.
It's not necessarily (and probably isn't) an error in how you're
using network_peer_name().

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: The reference server just died
Date: Thu, 30 Jan 2003 21:37:33 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043991454 11512 128.12.85.0 (31 Jan 2003 05:37:34 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4178

So says the test script.

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: Failing/passing 1.C randomly
Date: Thu, 30 Jan 2003 21:37:42 -0800
Lines: 34
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine8.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043991465 11520 171.64.15.73 (31 Jan 2003 05:37:45 GMT)
X-Complaints-To: 
To: Tim Reddy 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4179

Yes, it was bad cksum on TESTDATA.0 and TESTDATA.1. I don't know what file
I succeeded on because the script didn't give it once you passed.

Jichun

On Thu, 30 Jan 2003, Tim Reddy wrote:

> Are you failing this test via a bad checksum or otherwise. I'm wondering
> if I have the same problem, but don't want to waste percious test script
> runs proving it works "most of the time"
>
> Thanks,
> Tim
>
> On Thu, 30 Jan 2003, Jichun Zhu wrote:
>
> > Test 1.C is the only thing preventing me from submitting PA2a. Just now,
> > after some trivial work, it passed. Before I could breathe a sigh of
> > relief, I ran the test script another time, without even costing me a
> > credit, it failed again.
> >
> > What could have caused the randomness? Dropped packets? Packets arriving
> > out of order? Packets resent? These issues are required in part (a).
> >
> > Or could there be other reasons?
> >
> > Jichun
> >
> >
>
>
>
>

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Failing/passing 1.C randomly
Date: Fri, 31 Jan 2003 05:40:51 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043991651 11651 171.64.15.70 (31 Jan 2003 05:40:51 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4180


>What could have caused the randomness? Dropped packets? Packets arriving
>out of order? Packets resent? These issues are required in part (a).

Packets almost certainly won't be dropped or arrive out of order; there is
the possibility of them being retransmitted at the moment (although as I
indicated, I'll be sure to fix this for grading).  Certainly if you
added a simple check to discard retransmitted packets (just a single
if statement in your code), you should have no problems.

If you'd like, I can try and take a look at your code; it probably wouldn't
be until tomorrow however.
.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: The reference server just died
Date: Thu, 30 Jan 2003 21:42:38 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1043991759 11708 128.12.85.0 (31 Jan 2003 05:42:39 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4181

It's back.
"Rene Patnode"  wrote in message

> So says the test script.
>
> --
> ____________________________________________
> Rene Patnode
> Stanford University
>
> Computer Science
> Phi Kappa Psi
> Resident Assistant, Cardenal
>
> "Mmm... unexplained bacon." - Homer Simpson
>
>


.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Problem set #2 Question 2
Date: Thu, 30 Jan 2003 21:43:58 -0800
Lines: 23
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine39.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043991842 11736 171.64.15.114 (31 Jan 2003 05:44:02 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4182

Hi,
I'm a bit confused with question 2 in PS 2
what is the format of the forwarding table?
- the one used in lectures :
Prefix|Next-hop|Port  (slide 4/26)
so what do we use for next-hop?

- or the one used in the book (page 314):
SubnetNumber|SubnetMask|NextHop

Also, it seems to me that Company X has been
assigned a prefix that falls inside Company
Y range of addresses. Is this correct or
am I really off base here? Because if that
is so then company Y cannot use all the address
space assigned to it and then what is the purpose
of that?

Thanks
Rafa



.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: The reference server just died
Date: Fri, 31 Jan 2003 05:45:21 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043991921 11752 171.64.15.70 (31 Jan 2003 05:45:21 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4183


>So says the test script.

Embarrassing, but this happens very occasionally.  If you rerun the script,
you should be okay.  (Needless to say, if this happens during grading, we
will take this into account!)

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1.c
Date: Fri, 31 Jan 2003 05:46:46 +0000 (UTC)
Lines: 16
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043992006 11790 171.64.15.70 (31 Jan 2003 05:46:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4184

"Vijay Chemburkar"  writes:

>I'm running in to the exact same problem...the hand shake happens, then the
>application never sends any data to the client. so the output of the client
>is just:

>SYN handshake completed, data_sd=6

>then nothing until it times out. This doesn't happen when I run my client
>against my server. I've been looking at this for a good two hours now...has
>anyone else run into something similar?

When I've seen this happen before, it was due to mismatched sequence
numbers/ACKs.  Have you tried writing a packet log to disk to see what's
going on?

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: SYN sent twice?
Date: Fri, 31 Jan 2003 05:48:55 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1043992135 11955 171.64.15.70 (31 Jan 2003 05:48:55 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4185


>On the server side, after it received a SYN and responded with a SYN_ACK,
>it immediately received a SYN again, except that this time it is
>disguised as a "data" packet

Did you resolve this problem?

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: Recevier buffer and retransmission
Date: Fri, 31 Jan 2003 06:03:45 +0000 (UTC)
Organization: Stanford University
Lines: 23
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: epic16.stanford.edu
X-Trace: news.Stanford.EDU 1043993025 12797 171.64.15.49 (31 Jan 2003 06:03:45 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4186



My problem would be solved if the ack you send for duplicate data is *not* the biggest seqno in the
packet but should be the largest contig segment so far (which will be) last frame received.
Is this correct?

In article 
  (Matthew Jonathan Holliman) writes:
> 
> >Again, my retransmit code is intermittently failing this one. Is the following possible.
> 
> >I send some data and the receiver acks it. Before I get the ack I resend the data. 
> >So the receiver will ack the dup data. Now I send some more data which causes the receive
> >window to become a whole contiguous chunk. Now when I send the ACK for the large chunk I will
> >have sent two ACKS which are father apart than the receive window which is what I believe the test
> >looks for.
> 
> No; your "more data" can only reach the end of the sender window, i.e. you
> couldn't have sent an amount that when ACKed would be more than 3072 bytes
> ahead of the last ACK sent by the receiver.
> 
> If you don't figure out what's going on, please send me the code.
> 
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: test 1.I and retrans again
Date: Fri, 31 Jan 2003 06:05:03 +0000 (UTC)
Organization: Stanford University
Lines: 13
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: epic16.stanford.edu
X-Trace: news.Stanford.EDU 1043993103 12828 171.64.15.49 (31 Jan 2003 06:05:03 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4187


In article 
  (Matthew Jonathan Holliman) writes:
> 
> 
> >It seems to me that if there is a retrans mechanism in place the following could occur
> >I send a FIN and the peer sends a FINACK. Suppose this takes RTT. Then if my retrans < RTT
> >then I could send another FIN and so get a FIN FINACK FIN sequence which would fail the test.
> 
> Yes, but this test isn't run in part B.
> 

I thought the test fails for unmatched FIN packets.
.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Test 1.B lesson learned
Date: Thu, 30 Jan 2003 22:10:57 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043993459 13048 171.64.15.69 (31 Jan 2003 06:10:59 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4188

hi all!

thought this might be useful to some of y'll out there --

the mistake that I made (which prevented me from passing Test 1.B, and
ONLY 1.B) is that I incremented the sequence number for ALL packets.

what we are supposed to do is ONLY INCREMENT SEQUENCE NUMBER FOR DATA
PACKETS (i.e. packets WITHOUT ACK flag set, including SYN and FIN packets)

once this is fixed, test 1.B passes gracefully

Tan Gao
-------------------


.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: SYN sent twice?
Date: Thu, 30 Jan 2003 22:17:04 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine8.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043993825 13231 171.64.15.73 (31 Jan 2003 06:17:05 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4189

Yes I have fixed it. It seemed the SYN packet got handled twice. Once it
was handled as SYN, then it went on to be handled as a DATA packet.

Jichun


On Fri, 31 Jan 2003, Matthew Jonathan Holliman wrote:

>
> >On the server side, after it received a SYN and responded with a SYN_ACK,
> >it immediately received a SYN again, except that this time it is
> >disguised as a "data" packet
>
> Did you resolve this problem?
>
>

.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!treddy
From: Tim Reddy 
Newsgroups: su.class.cs244a
Subject: FIXED: Re: Failing/passing 1.C randomly
Date: Thu, 30 Jan 2003 22:20:31 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043994033 13426 171.64.15.82 (31 Jan 2003 06:20:33 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4190

For people having this problem, I just checked up on Matt's retransmission
idea and put in a quick test to throw out retransmissions, and my code now
passes 1C consistently (with no checksum problem).

Hope this helps,
-Tim

On Fri, 31 Jan 2003, Matthew Jonathan Holliman wrote:

>
> >What could have caused the randomness? Dropped packets? Packets arriving
> >out of order? Packets resent? These issues are required in part (a).
>
> Packets almost certainly won't be dropped or arrive out of order; there is
> the possibility of them being retransmitted at the moment (although as I
> indicated, I'll be sure to fix this for grading).  Certainly if you
> added a simple check to discard retransmitted packets (just a single
> if statement in your code), you should have no problems.
>
> If you'd like, I can try and take a look at your code; it probably wouldn't
> be until tomorrow however.
>



.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: test 1.I and retrans again
Date: Fri, 31 Jan 2003 06:30:14 +0000 (UTC)
Organization: Stanford University
Lines: 13
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: epic16.stanford.edu
X-Trace: news.Stanford.EDU 1043994614 14071 171.64.15.49 (31 Jan 2003 06:30:14 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4191


So does this mean an ok part B transport.c may fail part A?

In article 
  (Matthew Jonathan Holliman) writes:
> 
> 
> >It seems to me that if there is a retrans mechanism in place the following could occur
> >I send a FIN and the peer sends a FINACK. Suppose this takes RTT. Then if my retrans < RTT
> >then I could send another FIN and so get a FIN FINACK FIN sequence which would fail the test.
> 
> Yes, but this test isn't run in part B.
> 
.

Path: shelby.stanford.edu!elaine8.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: FIXED: Re: Failing/passing 1.C randomly
Date: Thu, 30 Jan 2003 22:38:41 -0800
Lines: 33
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: elaine8.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043995123 14705 171.64.15.73 (31 Jan 2003 06:38:43 GMT)
X-Complaints-To: 
To: Tim Reddy 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4192

Thanks. It worked for me too.

Jichun

On Thu, 30 Jan 2003, Tim Reddy wrote:

> For people having this problem, I just checked up on Matt's retransmission
> idea and put in a quick test to throw out retransmissions, and my code now
> passes 1C consistently (with no checksum problem).
>
> Hope this helps,
> -Tim
>
> On Fri, 31 Jan 2003, Matthew Jonathan Holliman wrote:
>
> >
> > >What could have caused the randomness? Dropped packets? Packets arriving
> > >out of order? Packets resent? These issues are required in part (a).
> >
> > Packets almost certainly won't be dropped or arrive out of order; there is
> > the possibility of them being retransmitted at the moment (although as I
> > indicated, I'll be sure to fix this for grading).  Certainly if you
> > added a simple check to discard retransmitted packets (just a single
> > if statement in your code), you should have no problems.
> >
> > If you'd like, I can try and take a look at your code; it probably wouldn't
> > be until tomorrow however.
> >
>
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Re: FIXED: Re: Failing/passing 1.C randomly
Date: Thu, 30 Jan 2003 22:44:03 -0800
Lines: 45
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043995447 15171 128.12.196.91 (31 Jan 2003 06:44:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4193

Yes, it also worked for me.

"Jichun Zhu"  wrote in message

> Thanks. It worked for me too.
>
> Jichun
>
> On Thu, 30 Jan 2003, Tim Reddy wrote:
>
> > For people having this problem, I just checked up on Matt's
retransmission
> > idea and put in a quick test to throw out retransmissions, and my code
now
> > passes 1C consistently (with no checksum problem).
> >
> > Hope this helps,
> > -Tim
> >
> > On Fri, 31 Jan 2003, Matthew Jonathan Holliman wrote:
> >
> > >
> > > >What could have caused the randomness? Dropped packets? Packets
arriving
> > > >out of order? Packets resent? These issues are required in part (a).
> > >
> > > Packets almost certainly won't be dropped or arrive out of order;
there is
> > > the possibility of them being retransmitted at the moment (although as
I
> > > indicated, I'll be sure to fix this for grading).  Certainly if you
> > > added a simple check to discard retransmitted packets (just a single
> > > if statement in your code), you should have no problems.
> > >
> > > If you'd like, I can try and take a look at your code; it probably
wouldn't
> > > be until tomorrow however.
> > >
> >
> >
> >
> >
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Re: Test 1.B lesson learned
Date: Thu, 30 Jan 2003 22:45:44 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1043995549 15260 128.12.196.91 (31 Jan 2003 06:45:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4194

I think for the SYN packet, you should still increment the sequence number.
I did that and I always passes test 1.B too.

"Tan Gao (weiwei)"  wrote in message

> hi all!
>
> thought this might be useful to some of y'll out there --
>
> the mistake that I made (which prevented me from passing Test 1.B, and
> ONLY 1.B) is that I incremented the sequence number for ALL packets.
>
> what we are supposed to do is ONLY INCREMENT SEQUENCE NUMBER FOR DATA
> PACKETS (i.e. packets WITHOUT ACK flag set, including SYN and FIN packets)
>
> once this is fixed, test 1.B passes gracefully
>
> Tan Gao
> -------------------
> 
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: Re: 1.c
Date: Thu, 30 Jan 2003 23:47:03 -0800
Lines: 39
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1043999229 18957 128.12.79.199 (31 Jan 2003 07:47:09 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4196

i wrote out a log, and it looks right to me.

client                                        server
send SYN ack:0 seq:1
                                                get SYN ack:0 seq:1
                                                send SYN|ACK ack:2 seq:1
get SYN|ACK ack:2 seq:1

both client and server will send next data packet with seq=2, and are
expecting next packet from peer to have seq=2. after the exchange, both
sides print out that the handshake is done (i.e., the parent app gets
awoken) and they both sit in the control loop but nothing happens (since the
client doesn't send any data to its socket thread).

can someone tell me if the exchange above is correct?

"Matthew Jonathan Holliman"  wrote in message

> "Vijay Chemburkar"  writes:
>
> >I'm running in to the exact same problem...the hand shake happens, then
the
> >application never sends any data to the client. so the output of the
client
> >is just:
>
> >SYN handshake completed, data_sd=6
>
> >then nothing until it times out. This doesn't happen when I run my client
> >against my server. I've been looking at this for a good two hours
now...has
> >anyone else run into something similar?
>
> When I've seen this happen before, it was due to mismatched sequence
> numbers/ACKs.  Have you tried writing a packet log to disk to see what's
> going on?
>


.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!sberg
From: Steven Bergsieker 
Newsgroups: su.class.cs244a
Subject: Good value for poll
Date: Thu, 30 Jan 2003 23:59:49 -0800
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine18.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1043999990 19645 171.64.15.83 (31 Jan 2003 07:59:50 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4197

What is a good value to use for the poll timeout?

.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Re: Test 1.I
Date: Fri, 31 Jan 2003 00:33:35 -0800
Lines: 46
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1044002016 21535 128.12.181.52 (31 Jan 2003 08:33:36 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4198

Found my bug!  I was inadvertently using recv() function instead of
network_recv() though I was implementing FIN/FIN-ACK sequence properly...


"Metha Jeeradit"  wrote in message

> I still have this same problem and I'm pretty positive that I got a
FIN-ACK
> after sending FIN and that the FIN-ACK was sent after receiving the
> FIN...I'm going to run out of test runs pretty soon.   I wonder if anyone
> has passed this test recently?  If so, could you kindly give us a hint as
to
> how you handled this problem?
>
> Thanks,
>
> Metha
>
> "Noh, Jeonghun"  wrote in message
> 
> > I got the error from this test. I wonder I made sure to check whether
the
> > active network terminator received the FIN-ACK before disconnecting the
> > channel.
> >
> > Assuming, I definitely created FIN-ACK, sent to the other peer, then the
> > peer definitely got the FIN-ACK and quit from the loop, what might be
the
> > cause of this error?
> >
> >
> >
> > --
> > *********************************
> > Jeonghun Noh
> > Dept. of Electrical Engineering
> > Stanford University
> > Tel : 1-650-497-6665
> > 
> > *********************************
> >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: FIXED: Re: Failing/passing 1.C randomly
Date: Fri, 31 Jan 2003 00:34:49 -0800
Lines: 15
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044002069 21550 128.12.72.54 (31 Jan 2003 08:34:29 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4199

And one more person thanks you for noticing this... one extra line of 
code and suddenly I pass 1.C.  Definitely a retransmission problem. 
(And here I thought I'd be up all night implementing a receive window...)

-Kevin

Tim Reddy wrote:
> For people having this problem, I just checked up on Matt's retransmission
> idea and put in a quick test to throw out retransmissions, and my code now
> passes 1C consistently (with no checksum problem).
> 
> Hope this helps,
> -Tim
> 

.

Path: shelby.stanford.edu!saga13.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: can't correctly deal with SYN-ACK in part Two
Date: Fri, 31 Jan 2003 01:57:48 -0800
Lines: 25
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044007070 23533 171.64.15.143 (31 Jan 2003 09:57:50 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4200

I migrated my code from part one to part two and first tried to implement
correctly handling dropped packet issues and such for the sender.

When the active side calls the code that sends the SYN, it does it in a
loop that retries the appropriate number of times, with timeouts and such.

When I run my own code against some tests and itself it handles the
SYN/SYN-ACK stuff okay. (In fact, it seems to handle the rest of the
transmission too ... all but FIN/FIN-ACK ...but that's for another day.)

BUT, when I run the test script I see the following error in the majority
of the tests (generally running against a reference implementation, I
think.)

Here is some code excerpted from my work. Two assert statements:
  assert(packetReceived.tcp_hdr.th_flags == (TH_ACK | TH_SYN));
  assert(packetReceived.tcp_hdr.th_ack == ctx->initial_sequence_num+1);

Oddly enough, it is the latter that fails. So if my code correctly gets a
SYN-ACK, why wouldn't the sequence number be appropriate? I hope a fresh
look tomorrow will yield some results, but I'm certainly puzzled right
now.

Ideas?

.

Path: shelby.stanford.edu!not-for-mail
From: Dale Neal 
Newsgroups: su.class.cs244a
Subject: Re: can't correctly deal with SYN-ACK in part Two
Date: Fri, 31 Jan 2003 02:23:19 -0800
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: masamune.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044008616 24637 128.12.110.70 (31 Jan 2003 10:23:36 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4201

I was under the impression that because we are not implementing a full 
3-way handshake the way TCP does that we don't have to deal with 
re-transmission for the SYN and SYN_ACK packets (basically, how would 
the passive end even know that it's SYN_ACK was recieved without a 
3-way?). Can a TA clarify?
-Dale

.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: Sending window
Date: Fri, 31 Jan 2003 03:28:22 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1044012506 26831 128.12.106.31 (31 Jan 2003 11:28:26 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4202

When we are near filling up the sending window, do we wait for 536 bytes to
be available before sending any packets?

Let's say there's currently 3000 bytes floating around that we sent, and our
poll() reveals that our application circuit wants to send even more data.
Should we read 72 bytes of this data and send it off, or wait for at least
536 bytes to be available, and read in as much as necessary?

It seems to make more sense to fill up the 72 bytes free, but my program
keeps getting the following error:

the client keeps crashing because of a "Bad number of bytes read" error, or
something like it.  I'm pretty sure all my byte math is right, and I'm
sending exactly what I need to send to the client, but only 72 bytes of it
before a long pause, which might be causing trouble?

However, if I set it up so that I wait for at least 536 bytes free, I'm not
getting this error, and I'm passing all the test cases...


.

Path: shelby.stanford.edu!not-for-mail
From: wmagrath 
Newsgroups: su.class.cs244a
Subject: testing problems?
Date: Fri, 31 Jan 2003 04:54:43 -0800
Lines: 16
Distribution: su
Message-ID: 
Reply-To:  
NNTP-Posting-Host: dn800cb809.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044017896 29901 128.12.184.9 (31 Jan 2003 12:58:16 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4203

Is anyone else having problems running the test script?  It worked for 
me earlier, but now doesn't work.  Here's my output:

myth8:~/cs244a> /afs/ir/class/cs244a/bin/test_code.pl hw2a transport.c
Creating submission tarball...
transport.c

Starting...
couldn't submit code for testing


I'm in the correct directory.

Thanks,
Bill

.

Path: shelby.stanford.edu!not-for-mail
From: Rajat Monga 
Newsgroups: su.class.cs244a
Subject: 1.H Not all data ACKed before sending FIN
Date: Fri, 31 Jan 2003 15:19:06 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1044026346 2457 171.64.15.101 (31 Jan 2003 15:19:06 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4204


I am getting this error even though I am pretty sure I am doing this in
order. In all the logs I can see the ACKs being received before FIN is
sent. 
However, I am setting the seq and ack values to 0 for the FIN and FIN_ACK
packets. Do they need to have the regular values? If yes, exactly what?

Am I missing something else?

Thanks,
Rajat
.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: Re: 1.H Not all data ACKed before sending FIN
Date: Fri, 31 Jan 2003 09:10:54 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044033056 6386 171.64.15.72 (31 Jan 2003 17:10:56 GMT)
X-Complaints-To: 
To: Rajat Monga 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4205

I'm setting the seq and ack to zero too...but i'm not facing any probs.

Sandhya

On Fri, 31 Jan 2003, Rajat Monga wrote:

>
> I am getting this error even though I am pretty sure I am doing this in
> order. In all the logs I can see the ACKs being received before FIN is
> sent.
> However, I am setting the seq and ack values to 0 for the FIN and FIN_ACK
> packets. Do they need to have the regular values? If yes, exactly what?
>
> Am I missing something else?
>
> Thanks,
> Rajat
>

.

Path: shelby.stanford.edu!saga19.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Re: can't correctly deal with SYN-ACK in part Two
Date: Fri, 31 Jan 2003 09:56:42 -0800
Lines: 11
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044035802 8617 171.64.15.149 (31 Jan 2003 17:56:42 GMT)
X-Complaints-To: 
To: Dale Neal 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4206

> I was under the impression that because we are not implementing a full
> 3-way handshake the way TCP does that we don't have to deal with
> re-transmission for the SYN and SYN_ACK packets (basically, how would
> the passive end even know that it's SYN_ACK was recieved without a
> 3-way?). Can a TA clarify?
I'll listen to the TA too, but what I thought we're doing is have the
passive side send out a SYN-ACK. How does it know it's SYN-ACK was
received? I thought it doesn't, but if it ever receives another one of the
SYN packets (perhaps we received a retransmission first...) it should send
out the initial SYN-ACK again just in case ... and not complain.

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: application done
Date: Fri, 31 Jan 2003 18:04:42 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 33
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044036282 8941 171.64.15.112 (31 Jan 2003 18:04:42 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4207


*Handshake completes successfully.
*The canonical [provided]server-client file 
transfer completes successfully, with the same 
size and contents resulting in file "rcvd".
*The client signals that it is done by calling 
transport_close.
*transport_close sets the ctx->local_data_sd to -1
*control-loop is set up to trap this -1, but ctx-
>local_data_sd has been reset to its previous 
value - 1 (there is no '-=' in the vicinity)?
So, is there a parallel universe for a second
ctx->local_data_sd?

Is there a way to detect when a socket has been 
closed (I moved the close(data_sock) of 
transport_close to after the waitpid call). 
Closing it before parent blocks resulted in my 
control_loop running wild as it's select would 
not block the child on a closed socket.  (set 
#define DEBUG 1) to see all this).

Also, The total num of bytes of data transfered
in nine packets is 14 bytes more than the transferred 
file size. Num sent equals num received; however, 
there may be a bug in the way I set lengths for 
network_send, network_recv, and to/from the 
STCPHeader.  We should expect the total number of
bytes transfered to equal the file size, correct?
(on assignment 1, commands were on a different 
connection...)

Keith
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: dprintf and compiler warnings
Date: Fri, 31 Jan 2003 18:19:39 +0000 (UTC)
Organization: Stanford University
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic20.stanford.edu
X-Trace: news.Stanford.EDU 1044037179 9577 171.64.15.55 (31 Jan 2003 18:19:39 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4208


if you compile without -DDEBUG (as the test script does) this produces a lot of compiler
warnings

transport.c:1043: warning: statement with no effect
transport.c:1044: warning: statement with no effect 

etc.

I am assuming we won't have points taken off for not compiling cleanly. Is this correct?
.

Path: shelby.stanford.edu!not-for-mail
From: "Tyson Condie" 
Newsgroups: su.class.cs244a
Subject: Go - Back N test
Date: Fri, 31 Jan 2003 11:28:33 -0800
Lines: 7
Distribution: su
Message-ID: 
Reply-To: "Tyson Condie" 
NNTP-Posting-Host: saga1.stanford.edu
X-Trace: news.Stanford.EDU 1044041310 12478 171.64.15.131 (31 Jan 2003 19:28:30 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4209

For some reason test 2.M does not believe I am implementing Go-Back N.  Is
it possible to get a detailed explanation on how the test script determines
whether or not I'm implementing this protocol?

Thanks


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: FIX: Intermittent purify error
Date: Fri, 31 Jan 2003 20:11:38 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044043898 14264 171.64.15.115 (31 Jan 2003 20:11:38 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4210

A few people have run into problems running client.purify, as it
complains about a missing file (a cryptic filename... ld.socket
something).  It was just pointed out to me that this is due to the
/tmp directory being occasionally cleared on the elaines.  This
directory is used to cache some files used by Purify, created when
you do 'make all.purify'.

If you rebuild your server.purify/client.purify, the problem
should go away.

Also, many people have noticed UMRs in network_send(); these can
generally be safely ignored.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Recevier buffer and retransmission
Date: Fri, 31 Jan 2003 20:19:35 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044044375 14518 171.64.15.115 (31 Jan 2003 20:19:35 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4211


>My problem would be solved if the ack you send for duplicate data is *not* the biggest seqno in the
>packet but should be the largest contig segment so far (which will be) last frame received.
>Is this correct?

You always ACK with the next sequence number expected from the other side,
i.e. the first byte not yet received.

.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: sequence num wrapping
Date: Fri, 31 Jan 2003 12:24:25 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine18.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044044667 14685 171.64.15.83 (31 Jan 2003 20:24:27 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4212


Hi...

do we have to take into account the fact that we might be transferring so
much data that seq no. might wrap around, or can we design without taking
that into account?

Thanks,
Priyanka

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test 1.I and retrans again
Date: Fri, 31 Jan 2003 20:36:54 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044045414 14989 171.64.15.115 (31 Jan 2003 20:36:55 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4213


>I thought the test fails for unmatched FIN packets.

I just changed it to look at only the first FIN, in case people had
implemented retransmissions.   So now a part B solution should also
always pass it (although again, we won't test this).

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Good value for poll
Date: Fri, 31 Jan 2003 20:37:42 +0000 (UTC)
Lines: 3
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044045462 15007 171.64.15.115 (31 Jan 2003 20:37:42 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4214

>What is a good value to use for the poll timeout?

Whatever makes sense given your next scheduled timeout.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Sending window
Date: Fri, 31 Jan 2003 20:42:44 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044045764 15214 171.64.15.115 (31 Jan 2003 20:42:44 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4215


>When we are near filling up the sending window, do we wait for 536 bytes to
>be available before sending any packets?

No, you should send data as soon as it's ready to be sent, up to the limit
given by your current sender window.

>However, if I set it up so that I wait for at least 536 bytes free, I'm not
>getting this error, and I'm passing all the test cases...

Perhaps this should be an additional test case next year.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: application done
Date: Fri, 31 Jan 2003 20:46:17 +0000 (UTC)
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044045977 15283 171.64.15.115 (31 Jan 2003 20:46:17 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4216


>Is there a way to detect when a socket has been 
>closed (I moved the close(data_sock) of 
>transport_close to after the waitpid call). 

read() or recv() will return zero when the socket
has been closed.

>Also, The total num of bytes of data transfered
>in nine packets is 14 bytes more than the transferred 
>file size. Num sent equals num received; however, 
>there may be a bug in the way I set lengths for 
>network_send, network_recv, and to/from the 
>STCPHeader.  We should expect the total number of
>bytes transfered to equal the file size, correct?
>(on assignment 1, commands were on a different 
>connection...)

Is that data transferred by either side?  The client
sends a filename, and perhaps the server responds
with some message about that too--I don't remember.

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: can't correctly deal with SYN-ACK in part Two
Date: Fri, 31 Jan 2003 20:47:59 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044046079 15319 171.64.15.115 (31 Jan 2003 20:47:59 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4217


>I'll listen to the TA too, but what I thought we're doing is have the
>passive side send out a SYN-ACK. How does it know it's SYN-ACK was
>received? I thought it doesn't, but if it ever receives another one of the
>SYN packets (perhaps we received a retransmission first...) it should send
>out the initial SYN-ACK again just in case ... and not complain.

This is correct.  If the active side doesn't hear a SYN-ACK back for its SYN,
it should retransmit the SYN; whenever the passive side receives a SYN,
it just responds with the regular ACK and its initial sequence number as
normal.

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: testing problems?
Date: Fri, 31 Jan 2003 20:52:57 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044046377 15504 171.64.15.115 (31 Jan 2003 20:52:57 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4218


>Is anyone else having problems running the test script?  It worked for 
>me earlier, but now doesn't work.  Here's my output:

Does this fail consistently for you?

Someone else mentioned a similar problem yesterday; resubmitting the
test without changes worked fine for him.  I'm not sure what the
problem is yet.

.

Path: shelby.stanford.edu!epic4.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: 1.H Not all data ACKed before sending FIN
Date: Fri, 31 Jan 2003 20:54:03 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: epic4.stanford.edu
X-Trace: news.Stanford.EDU 1044046443 15528 171.64.15.37 (31 Jan 2003 20:54:03 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4219

I am also having the same problem.
any clues?

>I am getting this error even though I am pretty sure I am doing this in
>order. In all the logs I can see the ACKs being received before FIN is
>sent. 
>However, I am setting the seq and ack values to 0 for the FIN and FIN_ACK
>packets. Do they need to have the regular values? If yes, exactly what?

>Am I missing something else?

>Thanks,
>Rajat
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1.c
Date: Fri, 31 Jan 2003 20:55:51 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044046551 15562 171.64.15.115 (31 Jan 2003 20:55:51 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4220


>both client and server will send next data packet with seq=2, and are
>expecting next packet from peer to have seq=2. after the exchange, both
>sides print out that the handshake is done (i.e., the parent app gets
>awoken) and they both sit in the control loop but nothing happens (since the
>client doesn't send any data to its socket thread).

>can someone tell me if the exchange above is correct?

Looks right.

Did you check for server retransmissions, as this was tripping up
several people?
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: dprintf and compiler warnings
Date: Fri, 31 Jan 2003 20:56:46 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044046606 15572 171.64.15.115 (31 Jan 2003 20:56:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4221


>I am assuming we won't have points taken off for not compiling cleanly. Is this correct?

Yes.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Go - Back N test
Date: Fri, 31 Jan 2003 21:02:03 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044046923 15771 171.64.15.115 (31 Jan 2003 21:02:03 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4222


>For some reason test 2.M does not believe I am implementing Go-Back N.  Is
>it possible to get a detailed explanation on how the test script determines
>whether or not I'm implementing this protocol?

It checks that if/when you retransmit a packet, you transmit all
following packets up to the end of your sender window.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: sequence num wrapping
Date: Fri, 31 Jan 2003 21:02:52 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044046972 15784 171.64.15.115 (31 Jan 2003 21:02:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4223


>do we have to take into account the fact that we might be transferring so
>much data that seq no. might wrap around, or can we design without taking
>that into account?

Please read the FAQ.
.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: can't correctly deal with SYN-ACK in part Two
Date: Fri, 31 Jan 2003 13:38:02 -0800
Lines: 26
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044049083 16695 128.12.85.0 (31 Jan 2003 21:38:03 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4224

Why would it send a regular ACK?

I can imagine the following scenario:
Active sends SYN. Passive sends SYN_ACK, but it gets dropped. Active resends
SYN. Now, once it receives the SYN, passive needs to resend the SYN_ACK,
because the active end is still waiting for a SYN_ACK.

"Matthew Jonathan Holliman"  wrote in message

>
> >I'll listen to the TA too, but what I thought we're doing is have the
> >passive side send out a SYN-ACK. How does it know it's SYN-ACK was
> >received? I thought it doesn't, but if it ever receives another one of
the
> >SYN packets (perhaps we received a retransmission first...) it should
send
> >out the initial SYN-ACK again just in case ... and not complain.
>
> This is correct.  If the active side doesn't hear a SYN-ACK back for its
SYN,
> it should retransmit the SYN; whenever the passive side receives a SYN,
> it just responds with the regular ACK and its initial sequence number as
> normal.
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: Re: 1.c
Date: Fri, 31 Jan 2003 14:00:38 -0800
Lines: 20
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1044050442 17462 128.12.79.199 (31 Jan 2003 22:00:42 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4225

yeah, that's what it was in the end. thanks for all your help.

"Matthew Jonathan Holliman"  wrote in message

>
> >both client and server will send next data packet with seq=2, and are
> >expecting next packet from peer to have seq=2. after the exchange, both
> >sides print out that the handshake is done (i.e., the parent app gets
> >awoken) and they both sit in the control loop but nothing happens (since
the
> >client doesn't send any data to its socket thread).
>
> >can someone tell me if the exchange above is correct?
>
> Looks right.
>
> Did you check for server retransmissions, as this was tripping up
> several people?


.

Path: shelby.stanford.edu!not-for-mail
From: "Alexander Fontana" 
Newsgroups: su.class.cs244a
Subject: FIN shutdown sequence.
Date: Fri, 31 Jan 2003 13:59:50 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: afontana.stanford.edu
X-Trace: news.Stanford.EDU 1044050649 17544 128.12.101.143 (31 Jan 2003 22:04:09 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4226

I am somewhat confused about the proper behavior before sending a fin.

The handout says the active end 'flushes data remaining in the buffer'.

But the first milestone says not to worry about retransmissions.

Doesn't this mean that for part 1, we might end up sending some packets
twice?  Or should we just wait for the acks to come in?  Could not resending
data cause testcase 1.H to fail?

Thanks,
Alex



.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: can't correctly deal with SYN-ACK in part Two
Date: Fri, 31 Jan 2003 22:19:03 +0000 (UTC)
Lines: 30
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1044051543 18016 171.64.15.117 (31 Jan 2003 22:19:03 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4227

"Rene Patnode"  writes:

>Why would it send a regular ACK?

It wouldn't--I meant the regular SYN-ACK.  Sorry for the confusion.

>I can imagine the following scenario:
>Active sends SYN. Passive sends SYN_ACK, but it gets dropped. Active resends
>SYN. Now, once it receives the SYN, passive needs to resend the SYN_ACK,
>because the active end is still waiting for a SYN_ACK.

>"Matthew Jonathan Holliman"  wrote in message

>>
>> >I'll listen to the TA too, but what I thought we're doing is have the
>> >passive side send out a SYN-ACK. How does it know it's SYN-ACK was
>> >received? I thought it doesn't, but if it ever receives another one of
>the
>> >SYN packets (perhaps we received a retransmission first...) it should
>send
>> >out the initial SYN-ACK again just in case ... and not complain.
>>
>> This is correct.  If the active side doesn't hear a SYN-ACK back for its
>SYN,
>> it should retransmit the SYN; whenever the passive side receives a SYN,
>> it just responds with the regular ACK and its initial sequence number as
>> normal.
>>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: FIN shutdown sequence.
Date: Fri, 31 Jan 2003 22:21:58 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1044051718 18118 171.64.15.117 (31 Jan 2003 22:21:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4228


>Doesn't this mean that for part 1, we might end up sending some packets
>twice?  Or should we just wait for the acks to come in?  Could not resending
>data cause testcase 1.H to fail?

You should wait for data to be ACKed before sending the FIN.  Since you
aren't implementing timeouts in part (A), you won't care when the ACKs
arrive, i.e. you won't be retransmitting anything.

.

Path: shelby.stanford.edu!not-for-mail
From: "Tyson Condie" 
Newsgroups: su.class.cs244a
Subject: Re: Go - Back N test
Date: Fri, 31 Jan 2003 14:25:13 -0800
Lines: 25
Distribution: su
Message-ID: 
References:  
Reply-To: "Tyson Condie" 
NNTP-Posting-Host: saga19.stanford.edu
X-Trace: news.Stanford.EDU 1044051980 18200 171.64.15.149 (31 Jan 2003 22:26:20 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4229

Here is what I think may be happening, based on the output I get from the
test run.  I send a burst of 3072 bytes (consisting of 5 packets size 536
and one of size 392).  The test program will drop the first packet, in which
case I retransmit the 3072 bytes. This retransmission will again send 5
packets of size 536 and one of size 392.   Now I suspect one of the
retransmitted packets is being dropped, reordered, whatever, which causes
the test program to think I only sent the bytes up to that first dropped
packet.  Can you please confirm whether this is or is not the case.

Thanks


"Matthew Jonathan Holliman"  wrote in message

>
> >For some reason test 2.M does not believe I am implementing Go-Back N.
Is
> >it possible to get a detailed explanation on how the test script
determines
> >whether or not I'm implementing this protocol?
>
> It checks that if/when you retransmit a packet, you transmit all
> following packets up to the end of your sender window.


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Calling print_congestion_window_and_estimatedRTT
Date: Fri, 31 Jan 2003 14:51:14 -0800
Lines: 23
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044053449 18930 128.12.195.69 (31 Jan 2003 22:50:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4230

1)
The assignment told us to look in mysock.c to see how
print_congestion_window_and_estimatedRTT but there is no call to it in
mysock.c that I could find. Could someone please explain how it is called?
Namely, what does fid means?

2)
My code fails test cases 2.K and 2.M (the finserver is run against
client.retrans). I ran finserver and client.retrans on my own, and found
that client.retrans just sits and prints the info about each received
packet. My debug messages included in the finserver output showed that my
code is retransmitting a full window of 3072 bytes in the same 7 packets for
5 times before quitting. From that point on client.retrans just sits there.

According to the specs I think that is what the retransmission protocol and
Go-back-N call for (5 retransmission of all 7 packets making up a full 3072
bytes window). I do not understand why my code fails the test cases. The
only thing I can notice is that ERTT is some junk value in client.retrans
output (I don't know how it is called).

-myl


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: 1.E: Invalid SYN sequence number 16838
Date: Fri, 31 Jan 2003 15:15:18 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044054921 19713 171.64.15.74 (31 Jan 2003 23:15:21 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4231

Anyone have a clue why that would happen?
What are the criteria for a valid SYN sequence number?
I thought that you set it to some value X, and things
just proceeded from there.

thanks,

- Erik

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Invalid SYN sequence number 16838
Date: Fri, 31 Jan 2003 15:22:49 -0800
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044055370 19958 128.12.85.0 (31 Jan 2003 23:22:50 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4232

The assignment specifies that the sequence number has to be a random number
between 0 and 255.

"Erik Damian Weathers"  wrote in message

> Anyone have a clue why that would happen?
> What are the criteria for a valid SYN sequence number?
> I thought that you set it to some value X, and things
> just proceeded from there.
>
> thanks,
>
> - Erik
>


.

Path: shelby.stanford.edu!elaine3.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: Re: application done
Date: Fri, 31 Jan 2003 23:37:55 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 55
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1044056275 20651 171.64.15.68 (31 Jan 2003 23:37:55 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4233

In article 
Matthew Jonathan Holliman  wrote:
>
>>Is there a way to detect when a socket has been 
>>closed (I moved the close(data_sock) of 
>>transport_close to after the waitpid call). 
>
>read() or recv() will return zero when the socket
>has been closed.

If I understand correctly, read() or recv() will
return zero also when the pipe is empty, but the 
socket is not closed.  One of the neat things my code
did was to have the server parent somehow die, then
the child never blocks in the control_loop select, but 
there is nothing in the pipe...though the child keeps 
getting sent three.  I somehow got it the parent to
block at the waitpid...but it's not signaling "done", 
at least not as I'm expecting.  A race cndition on
the ctx->local_data_sd would leave me with the actual
sd value, or -1, but something inbetween seems to turn up...

Still, I'll take your comment as a clue that a zero
back from read() or recv() should be all I need.. 

>
>>Also, The total num of bytes of data transfered
>>in nine packets is 14 bytes more than the transferred 
>>file size. Num sent equals num received; however, 
>>there may be a bug in the way I set lengths for 
>>network_send, network_recv, and to/from the 
>>STCPHeader.  We should expect the total number of
>>bytes transfered to equal the file size, correct?
>>(on assignment 1, commands were on a different 
>>connection...)
>
>Is that data transferred by either side?  The client
>sends a filename, and perhaps the server responds
>with some message about that too--I don't remember.
>

file "temp" is 4776 bytes .  Server sends 8 packets of 536 each, and one 
packet
of 502 bytes (not counting header bytes in both cases--print statements
n server and client show theses same values for send and receive, 
respectively.  Total sums 4790. Since a \r\n is added to all (maybe all
-1) packets, I would have expected 4776+18, or 4794 bytes.  Still, it does
not look like I have a systematic bug (e.g., losing 1 byte/packet).  The
written "rcvd" file is 4776 bytes, as it should be.

Truth is, I'm really not sure if the client is attempting to exit
normally, or as a result of some problem following the successful
file transfer.


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: application done
Date: Fri, 31 Jan 2003 15:47:39 -0800
Lines: 69
Distribution: su
Message-ID: 
References:  
 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044056861 21073 171.64.15.74 (31 Jan 2003 23:47:41 GMT)
X-Complaints-To: 
To: Keith A Primdahl 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4234

1 comment inline...

On Fri, 31 Jan 2003, Keith A Primdahl wrote:

> In article 
> Matthew Jonathan Holliman  wrote:
> >
> >>Is there a way to detect when a socket has been
> >>closed (I moved the close(data_sock) of
> >>transport_close to after the waitpid call).
> >
> >read() or recv() will return zero when the socket
> >has been closed.
>
> If I understand correctly, read() or recv() will
> return zero also when the pipe is empty, but the
> socket is not closed.

I thought that read would block if you requested
X bytes but 0 bytes were available in the pipe,
not return 0.  Unless you use O_NDELAY or something.

- Erik

> One of the neat things my code
> did was to have the server parent somehow die, then
> the child never blocks in the control_loop select, but
> there is nothing in the pipe...though the child keeps
> getting sent three.  I somehow got it the parent to
> block at the waitpid...but it's not signaling "done",
> at least not as I'm expecting.  A race cndition on
> the ctx->local_data_sd would leave me with the actual
> sd value, or -1, but something inbetween seems to turn up...
>
> Still, I'll take your comment as a clue that a zero
> back from read() or recv() should be all I need..
>
> >
> >>Also, The total num of bytes of data transfered
> >>in nine packets is 14 bytes more than the transferred
> >>file size. Num sent equals num received; however,
> >>there may be a bug in the way I set lengths for
> >>network_send, network_recv, and to/from the
> >>STCPHeader.  We should expect the total number of
> >>bytes transfered to equal the file size, correct?
> >>(on assignment 1, commands were on a different
> >>connection...)
> >
> >Is that data transferred by either side?  The client
> >sends a filename, and perhaps the server responds
> >with some message about that too--I don't remember.
> >
>
> file "temp" is 4776 bytes .  Server sends 8 packets of 536 each, and one
> packet
> of 502 bytes (not counting header bytes in both cases--print statements
> n server and client show theses same values for send and receive,
> respectively.  Total sums 4790. Since a \r\n is added to all (maybe all
> -1) packets, I would have expected 4776+18, or 4794 bytes.  Still, it does
> not look like I have a systematic bug (e.g., losing 1 byte/packet).  The
> written "rcvd" file is 4776 bytes, as it should be.
>
> Truth is, I'm really not sure if the client is attempting to exit
> normally, or as a result of some problem following the successful
> file transfer.
>
>
>

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Go - Back N test
Date: Fri, 31 Jan 2003 23:55:53 +0000 (UTC)
Lines: 17
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine42.stanford.edu
X-Trace: news.Stanford.EDU 1044057353 21376 171.64.15.117 (31 Jan 2003 23:55:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4235


>Here is what I think may be happening, based on the output I get from the
>test run.  I send a burst of 3072 bytes (consisting of 5 packets size 536
>and one of size 392).  The test program will drop the first packet, in which
>case I retransmit the 3072 bytes. This retransmission will again send 5
>packets of size 536 and one of size 392.   Now I suspect one of the
>retransmitted packets is being dropped, reordered, whatever, which causes
>the test program to think I only sent the bytes up to that first dropped
>packet.  Can you please confirm whether this is or is not the case.

It shouldn't be.  The test examines the client side to see what data
packets are received; it's the server that's forced to retransmit data
in this test, and that operates in reliable mode.  If you look in network.c,
you'll see that all packet dropping/reordering is done only at the sender
side, so the client should receive all retransmitted packets.

Let me look into this some more.
.

Path: shelby.stanford.edu!not-for-mail
From: "Alexander Fontana" 
Newsgroups: su.class.cs244a
Subject: linux build
Date: Fri, 31 Jan 2003 16:37:57 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: afontana.stanford.edu
X-Trace: news.Stanford.EDU 1044060135 23208 128.12.101.143 (1 Feb 2003 00:42:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4236

I thought it would be fun to see how all this runs on an x86, but the build
fails on firebird.  :(

firebird5:~/cs244a/hw2> make
gcc -g -DLINUX  -c client.c
client.c: In function `main':
client.c:68: `optarg' undeclared (first use in this function)
client.c:68: (Each undeclared identifier is reported only once
client.c:68: for each function it appears in.)
client.c:84: `optind' undeclared (first use in this function)
make: *** [client.o] Error 1


.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Packets with overlapping data?
Date: Fri, 31 Jan 2003 17:15:39 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044062141 24250 171.64.15.72 (1 Feb 2003 01:15:41 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4237

Do we have to worry about receiving out-of-order packets that are
partially overlapped on each other?

For example, we may have two packets in receiver's buffer.

Packet #1: th_seq = 100, data_len = 20;
Packet #2: th_seq = 150, data_len = 50;

then here comes a packet #3 with th_seq = 110 and data_len = 250, which
partially overlapped with packet #1 and completely contains packet #2.

If we must take care of packets with overlapping data, shall we honor the
data from earlier packets or the latest packets?

Thanks.

Jichun

.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: What needs to be done with ACK of duplicate data?
Date: Fri, 31 Jan 2003 17:29:33 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044062974 24684 171.64.15.72 (1 Feb 2003 01:29:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4238

What's the point of receiver ACKing duplicated data packets? What does the
sender do to the resulted duplicated ACK packets other than discarding
them?

Does the sender check if it receives ACK for every packets it has sent? I
don't think so. All the sender cares probably is that the full range of
data it sends get ACKed.

Please clarify. Thanks.

Jichun

.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Go - Back N test
Date: Sat, 1 Feb 2003 01:43:33 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1044063813 25092 171.64.15.111 (1 Feb 2003 01:43:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4239


I found the problem; the script was using the results from a previous
test case, which had been overwritten in the meantime by a test for which
the assumption of no packet loss on the sender side didn't hold.

I've fixed the bug.
.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sat, 1 Feb 2003 02:06:53 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1044065213 25752 171.64.15.111 (1 Feb 2003 02:06:54 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4240


>I'm a bit confused with question 2 in PS 2
>what is the format of the forwarding table?
>- the one used in lectures :
>Prefix|Next-hop|Port  (slide 4/26)
>so what do we use for next-hop?

Yes, please use this format.  You can invent something reasonable for
the next hop.

>Also, it seems to me that Company X has been
>assigned a prefix that falls inside Company
>Y range of addresses. Is this correct or
>am I really off base here? Because if that
>is so then company Y cannot use all the address
>space assigned to it and then what is the purpose
>of that?

I don't want to say too much here, because it will give away the
answer, but you seem to have the right idea.  I guess you might be able
to imagine scenarios where this assignment makes sense.
.

Path: shelby.stanford.edu!saga8.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: linux build
Date: Fri, 31 Jan 2003 18:35:21 -0800
Lines: 50
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga8.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044066923 26542 171.64.15.138 (1 Feb 2003 02:35:23 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4241

Hi,
I've implemented the complete assignment using Linux and only used
the elaines for testing. The changes you need are pretty simple:

On client.c the unistd.h include is needed for getopt

$ diff client.c ../../hw2_orig/hw2/src/client.c
31,34d30
< #ifdef LINUX
< #include <unistd.h>  /* for getopt */
< #endif

and on network.h the sys_err[] needs to be guarded against
because it is defined in stdio.h

$ diff network.h ../../hw2_orig/hw2/src/network.h
33,34c33
< #ifndef LINUX
< #ifndef BSD
---
> #ifndef BSD
36d34
< #endif


With those changes and running "make -f Makefile.linux"
it compiled ok in my system (Mandrake 8.2).

Hope this helps.
Rafa



On Fri, 31 Jan 2003, Alexander Fontana wrote:

> I thought it would be fun to see how all this runs on an x86, but the build
> fails on firebird.  :(
>
> firebird5:~/cs244a/hw2> make
> gcc -g -DLINUX  -c client.c
> client.c: In function `main':
> client.c:68: `optarg' undeclared (first use in this function)
> client.c:68: (Each undeclared identifier is reported only once
> client.c:68: for each function it appears in.)
> client.c:84: `optind' undeclared (first use in this function)
> make: *** [client.o] Error 1
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Fri, 31 Jan 2003 18:48:21 -0800
Lines: 30
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044067769 26890 128.12.186.92 (1 Feb 2003 02:49:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4242


"Jichun Zhu"  wrote in message

> Do we have to worry about receiving out-of-order packets that are
> partially overlapped on each other?

Yes.

>
> For example, we may have two packets in receiver's buffer.
>
> Packet #1: th_seq = 100, data_len = 20;
> Packet #2: th_seq = 150, data_len = 50;
>
> then here comes a packet #3 with th_seq = 110 and data_len = 250, which
> partially overlapped with packet #1 and completely contains packet #2.
>
> If we must take care of packets with overlapping data, shall we honor the
> data from earlier packets or the latest packets?
>

Assuming that you are aligning sequence numbers, the overlapping data from
the two packets will be identical.

> Thanks.
>
> Jichun
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: What needs to be done with ACK of duplicate data?
Date: Fri, 31 Jan 2003 18:52:30 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044068018 27095 128.12.186.92 (1 Feb 2003 02:53:38 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4243

> What's the point of receiver ACKing duplicated data packets?

The ACK contains the next sequence number that the receiver expects.  It is
sent for every packet that the receiver receives.

What does the
> sender do to the resulted duplicated ACK packets other than discarding
> them?
>

Nothing else.

> Does the sender check if it receives ACK for every packets it has sent? I
> don't think so. All the sender cares probably is that the full range of
> data it sends get ACKed.
>

Correct -- if the sender sends packet 1, 2, 3, 4 but the acks saying the
receiver is expecting 2, 3, 4 get lost in transmission, if the sender
receives an ack for 5, it knows that the receiver has everything up to
packet 5.

Now of course, don't get confused -- the acks are based on sequence numbers
but I just used packet numbers for simplicity.

> Please clarify. Thanks.
>
> Jichun
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Calling print_congestion_window_and_estimatedRTT
Date: Fri, 31 Jan 2003 19:17:20 -0800
Lines: 44
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044069509 27742 128.12.186.92 (1 Feb 2003 03:18:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4244


"Man Yu Lui"  wrote in message

> 1)
> The assignment told us to look in mysock.c to see how
> print_congestion_window_and_estimatedRTT but there is no call to it in
> mysock.c that I could find. Could someone please explain how it is called?
> Namely, what does fid means?
>

Perhaps another TA could verify this, but what I believe is that the
testing/grading script directly calls
print_congestion_windows_and_estimatedRTT function.  Unless you hear
otherwise, ignore the fid and just set the variables being passed to the
printf in that function to the corect values (which obviously are the values
you are using in your algorithm).

> 2)
> My code fails test cases 2.K and 2.M (the finserver is run against
> client.retrans). I ran finserver and client.retrans on my own, and found
> that client.retrans just sits and prints the info about each received
> packet. My debug messages included in the finserver output showed that my
> code is retransmitting a full window of 3072 bytes in the same 7 packets
for
> 5 times before quitting. From that point on client.retrans just sits
there.
>
> According to the specs I think that is what the retransmission protocol
and
> Go-back-N call for (5 retransmission of all 7 packets making up a full
3072
> bytes window). I do not understand why my code fails the test cases. The
> only thing I can notice is that ERTT is some junk value in client.retrans
> output (I don't know how it is called).
>

I don't have the details on those specific test cases.  Has anyone else come
across issues with these particular test cases?

> -myl
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Problem Set 2 #1
Date: Fri, 31 Jan 2003 20:46:09 -0800
Lines: 23
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044074770 29802 128.12.85.0 (1 Feb 2003 04:46:10 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4245

It seems to me that the directions for 1b are a little redundant..
Draw a graph representing the topology of the first four routers in your
answer to part (a). Show the IP addresses of all the interfaces on the four
routers. For the first four router interfaces on the path to www.mit.edu,
try and determine their IP address and (where possible) their subnet mask.

Am I correct in what this asking: Draw a graph of the first four routers
labelled with the IP addresses and subnets of each of the interfaces.

This graph is nothing more than a sequence of nodes, correct?

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: ifconfig/host
Date: Fri, 31 Jan 2003 21:14:50 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044076491 479 128.12.85.0 (1 Feb 2003 05:14:51 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4246

How can we use these commands to get the subnets of a given host? Using host
by itself on a router will give the IP addresses of all the interfaces, but
no information about the subnets. I tried reading the man pages for ifconfig
and host, but they weren't very helpful.

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: ps2 q7
Date: Sat, 1 Feb 2003 07:46:50 +0000 (UTC)
Organization: Stanford University
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1044085610 4604 171.64.15.100 (1 Feb 2003 07:46:50 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4247


I have looked throught the man pages for traceroute and there is no mention
of how to suppress the RTT for the intermediate routers. Am I allowed to
do something like traceroute ... | grep or something like that?
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Re: ps2 q7
Date: Sat, 1 Feb 2003 07:59:36 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1044086376 4967 171.64.15.100 (1 Feb 2003 07:59:36 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4248


Sorry. Found in man page after all.
.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Test cases 2.K and 2.M
Date: Sat, 1 Feb 2003 04:05:24 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044101095 10986 128.12.195.69 (1 Feb 2003 12:04:55 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4249

My code is failing for these two cases. I think the failure has to do with
my server trying to retransmit more than 5 times and closing the connection
thinking the network has failed (according to the specs). My server returns
a message "process_line: Broken pipe"

However, seems like this is causing the test script to skip report on the
two cases (Results: NOT TESTED).

Could someone please clarify what and how are these two cases tested and why
the expected behavior of my code (to close connection after 5 Go-Back-N
retransmissions) would fail the tests and make them skip?

Is anyone getting these two cases working?

Thanks.

-myl


.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: Re: Test cases 2.K and 2.M
Date: Sat, 01 Feb 2003 08:26:28 -0800
Lines: 36
Distribution: su
Message-ID: 
References: 
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044116799 16611 127.0.0.1 (1 Feb 2003 16:26:39 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4250

Yesterday, I posted a message stating that I was having issues with test 
2.M.    This was the only test I was failing i.e. I was passing test 
2.K.  Well, apparently there was an issue/bug with test 2.M. After Matt 
corrected the bug in the test, I resubmitted the test and everything 
passed except tests 2.K and 2.M, which showed "NOT TESTED", just like 
your run. So in summary, I was passing 2.K and failing 2.M, then 
following the bug fix for test 2.M, I showed "NOT TESTED" for tests 2.K 
and 2.M.  I made 0 code changes between the two separate submissions.

Could we have someone look into this issue.

Thanks,
Tyson

Man Yu Lui wrote:
> My code is failing for these two cases. I think the failure has to do with
> my server trying to retransmit more than 5 times and closing the connection
> thinking the network has failed (according to the specs). My server returns
> a message "process_line: Broken pipe"
> 
> However, seems like this is causing the test script to skip report on the
> two cases (Results: NOT TESTED).
> 
> Could someone please clarify what and how are these two cases tested and why
> the expected behavior of my code (to close connection after 5 Go-Back-N
> retransmissions) would fail the tests and make them skip?
> 
> Is anyone getting these two cases working?
> 
> Thanks.
> 
> -myl
> 
> 


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: ifconfig/host
Date: Sat, 1 Feb 2003 10:32:36 -0800
Lines: 30
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044124425 19687 128.12.186.92 (1 Feb 2003 18:33:45 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4251

Look again in the man pages and make sure you understand how each command
can be used.  What those commands won't give you, see if you can derive
using all the information you know.

--Russ

"Rene Patnode"  wrote in message

> How can we use these commands to get the subnets of a given host? Using
host
> by itself on a router will give the IP addresses of all the interfaces,
but
> no information about the subnets. I tried reading the man pages for
ifconfig
> and host, but they weren't very helpful.
>
> --
> ____________________________________________
> Rene Patnode
> Stanford University
>
> Computer Science
> Phi Kappa Psi
> Resident Assistant, Cardenal
>
> "Mmm... unexplained bacon." - Homer Simpson
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Problem Set 2 #1
Date: Sat, 1 Feb 2003 10:40:59 -0800
Lines: 33
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044124928 19864 128.12.186.92 (1 Feb 2003 18:42:08 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4252

Using the commands we provided, you will be able to ascertain the
interaction between the nodes in the graph.

--Russ

"Rene Patnode"  wrote in message

> It seems to me that the directions for 1b are a little redundant..
> Draw a graph representing the topology of the first four routers in your
> answer to part (a). Show the IP addresses of all the interfaces on the
four
> routers. For the first four router interfaces on the path to www.mit.edu,
> try and determine their IP address and (where possible) their subnet mask.
>
> Am I correct in what this asking: Draw a graph of the first four routers
> labelled with the IP addresses and subnets of each of the interfaces.
>
> This graph is nothing more than a sequence of nodes, correct?
>
> --
> ____________________________________________
> Rene Patnode
> Stanford University
>
> Computer Science
> Phi Kappa Psi
> Resident Assistant, Cardenal
>
> "Mmm... unexplained bacon." - Homer Simpson
>
>


.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test cases 2.K and 2.M
Date: Sat, 1 Feb 2003 19:57:49 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine39.stanford.edu
X-Trace: news.Stanford.EDU 1044129469 21702 171.64.15.114 (1 Feb 2003 19:57:49 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4253

If you send me your code, I can take a look.  I looked at Tyson's code,
and explained via e-mail why it said "NOT TESTED" for him.  It works for the
transport.c's I've tested.

The program output used for the test case can be found in
grading_src/build/.network_log.retrans.server.TESTDATA.*

These logs are used to examine retransmission counts and determine whether
Go-back N was implemented correctly.

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: ifconfig/host
Date: Sat, 1 Feb 2003 13:00:01 -0800
Lines: 39
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044133201 23491 128.12.85.0 (1 Feb 2003 21:00:01 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4254

ifconfig seems to be the utility that returns subnet masks. ifconfig takes
an interface name as its chief argument. However, host only returns IP
addresses. Where do we get the interface names from? I still don't see
anything about that in the man pages.

"Russell Greene"  wrote in message

> Look again in the man pages and make sure you understand how each command
> can be used.  What those commands won't give you, see if you can derive
> using all the information you know.
>
> --Russ
>
> "Rene Patnode"  wrote in message
> 
> > How can we use these commands to get the subnets of a given host? Using
> host
> > by itself on a router will give the IP addresses of all the interfaces,
> but
> > no information about the subnets. I tried reading the man pages for
> ifconfig
> > and host, but they weren't very helpful.
> >
> > --
> > ____________________________________________
> > Rene Patnode
> > Stanford University
> >
> > Computer Science
> > Phi Kappa Psi
> > Resident Assistant, Cardenal
> >
> > "Mmm... unexplained bacon." - Homer Simpson
> >
> >
>
>


.

Path: shelby.stanford.edu!saga7.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Client hangs while server gives up on retransmitting.
Date: Sat, 1 Feb 2003 15:43:48 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044143028 27533 171.64.15.137 (1 Feb 2003 23:43:48 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4255

Let's say the client has transmitted all it wants/needs, and all
outstanding data has been ack'd.

The server is in the process of sending data. At some point, it
retransmits something too many times. Right now I have it calling an
"assert" for retransmitted too many times. Thus, it just stops.

At this point the client is a little confused, since it has called a
select statement with NO timeout since from it's perspective there isn't
anything to do. Is this wrong? Should it instead wait for 2* estRTT? For
if it did, then there still wouldn't be anything "ready" on the
application data socket, nor would the application data have been closed
at this point... so rather than poll needlessly, I hang.

How should the client know there isn't anything coming from the server and
that the server has terminated prematurely?

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Client hangs while server gives up on retransmitting.
Date: Sun, 2 Feb 2003 00:46:19 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 38
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044146779 29385 171.64.15.112 (2 Feb 2003 00:46:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4256

In article 
Jonathan D Herbach   wrote:
>Let's say the client has transmitted all it wants/needs, and all
>outstanding data has been ack'd.
>
>The server is in the process of sending data. At some point, it
>retransmits something too many times. Right now I have it calling an
>"assert" for retransmitted too many times. Thus, it just stops.

Just dying seems a bit anti-social, since the server is making a
one-way trip to oblivion without telling the client.  How about
sending a FIN first, sort of like a good-bye letter?  :)

>
>At this point the client is a little confused, since it has called a
>select statement with NO timeout since from it's perspective there isn't
>anything to do. Is this wrong? Should it instead wait for 2* estRTT? For
>if it did, then there still wouldn't be anything "ready" on the
>application data socket, nor would the application data have been closed
>at this point... so rather than poll needlessly, I hang.

The client is waiting for expected data; it has no way to know
that the data will never come.  Waiting forever is not an
unreasonable action.

As a debugging step, you can try making your TX retry time longer,
or increasing the delay for the next retry by a larger-than-normal
amount.  This is one way to help you isolate "too many timeout"
problems.

SteveJ

>
>How should the client know there isn't anything coming from the server and
>that the server has terminated prematurely?
>


.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sat, 1 Feb 2003 19:45:47 -0800
Lines: 37
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine12.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044157549 3889 171.64.15.77 (2 Feb 2003 03:45:49 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4257

On Sat, 1 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >I'm a bit confused with question 2 in PS 2
> >what is the format of the forwarding table?
> >- the one used in lectures :
> >Prefix|Next-hop|Port  (slide 4/26)
> >so what do we use for next-hop?
>
> Yes, please use this format.  You can invent something reasonable for
> the next hop.

Then it seems I'm missing something here because I don't understand
the purpose of the question. You give us the prefixes and the ports
and want us to create a table with prefixes and ports. I don't get
it.
If I understand correctly, the router will always select the most
specific route first so a table like

Prefix         |    Next-Hop      | Port
-----------------------------------------
119.12.73/24   |  119.12.73.x     |   1
119.12.64/18   |       y          |   2
Default        |       z          |   3


where x is in [1,254]
y is any address in 119.12.64/18 that is not in 119.12.73/24
and z is any address not in 119.12.64/18

will suffice, but then I don't see the point of the exercise.
Can anyone enlighten me?

Thanks
Rafa


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sun, 2 Feb 2003 04:09:14 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 19
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044158954 4396 171.64.15.112 (2 Feb 2003 04:09:14 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4258


The point of the exercise is to demonstrate your understanding
of longest prefix/shortest prefix addressing as used in CIDR.

SteveJ

>
>>
>> >I'm a bit confused with question 2 in PS 2
[ . . . ]
but then I don't see the point of the exercise.
>Can anyone enlighten me?
>
>Thanks
>Rafa
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sat, 1 Feb 2003 20:20:41 -0800
Lines: 45
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044159642 4899 128.12.85.0 (2 Feb 2003 04:20:42 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4259

When it comes to picking reasonable values for next hop, are we assuming
that the ports lead directly to the networks in question or lead by a direct
link to a router in those networks?

"Rafael M Hernandez"  wrote in message

> On Sat, 1 Feb 2003, Matthew Jonathan Holliman wrote:
>
> >
> > >I'm a bit confused with question 2 in PS 2
> > >what is the format of the forwarding table?
> > >- the one used in lectures :
> > >Prefix|Next-hop|Port  (slide 4/26)
> > >so what do we use for next-hop?
> >
> > Yes, please use this format.  You can invent something reasonable for
> > the next hop.
>
> Then it seems I'm missing something here because I don't understand
> the purpose of the question. You give us the prefixes and the ports
> and want us to create a table with prefixes and ports. I don't get
> it.
> If I understand correctly, the router will always select the most
> specific route first so a table like
>
> Prefix         |    Next-Hop      | Port
> -----------------------------------------
> 119.12.73/24   |  119.12.73.x     |   1
> 119.12.64/18   |       y          |   2
> Default        |       z          |   3
>
>
> where x is in [1,254]
> y is any address in 119.12.64/18 that is not in 119.12.73/24
> and z is any address not in 119.12.64/18
>
> will suffice, but then I don't see the point of the exercise.
> Can anyone enlighten me?
>
> Thanks
> Rafa
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sun, 2 Feb 2003 07:22:44 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 11
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044170564 9487 171.64.15.112 (2 Feb 2003 07:22:44 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4260

I don't follow your question.  Please elaborate, and let
me know which question you are asking about.

SteveJ

In article 
Rene Patnode  wrote:
>When it comes to picking reasonable values for next hop, are we assuming
>that the ports lead directly to the networks in question or lead by a direct
>link to a router in those networks?
>
.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sun, 2 Feb 2003 04:02:48 -0800
Lines: 30
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044187369 16279 128.12.85.0 (2 Feb 2003 12:02:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4261

I'm asking about the question which is the topic of this thread...

When Rafael asked about what the entries should be for the next hops,
Matthew responded and said to pick something reasonable. However what is
reasonable depends on whether the ports in question (1,2, or 3) lead
directly to the networks in question (X or Y)-- that is, the router has an
interface on that network--or if the ports lead to peer to peer links with
other routers that do lie in those networks. In the former case, it seems as
though the port itself would be the next hop, but in the latter, we have to
invent an IP address in some other network.

Also, would it be possible to get a response to my previous question about
ifconfig?

"Steve Jacobson"  wrote in message

> I don't follow your question.  Please elaborate, and let
> me know which question you are asking about.
>
> SteveJ
>
> In article 
> Rene Patnode  wrote:
> >When it comes to picking reasonable values for next hop, are we assuming
> >that the ports lead directly to the networks in question or lead by a
direct
> >link to a router in those networks?
> >


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sun, 2 Feb 2003 20:43:02 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 51
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044218582 28400 171.64.15.112 (2 Feb 2003 20:43:02 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4262

I don't see what difference it could make, attaching directly
to the destination network or attaching to an additional router.

Under normal circumstances, a router does not change either IP address
(or port number) in the IP header.  Those values remain constant from
one end of an internet to the other.  You can assume normal circumstances
here.

The router in question is responsible for forwarding packets it
receives to the correct ports.  Whether the network of interest is
directly attached this router does not affect this router's behavior
(or the contents of its routing table) at all.

Which ifconfig question remains unanswered?

SteveJ

In article 
Rene Patnode  wrote:
>I'm asking about the question which is the topic of this thread...
>
>When Rafael asked about what the entries should be for the next hops,
>Matthew responded and said to pick something reasonable. However what is
>reasonable depends on whether the ports in question (1,2, or 3) lead
>directly to the networks in question (X or Y)-- that is, the router has an
>interface on that network--or if the ports lead to peer to peer links with
>other routers that do lie in those networks. In the former case, it seems as
>though the port itself would be the next hop, but in the latter, we have to
>invent an IP address in some other network.
>
>Also, would it be possible to get a response to my previous question about
>ifconfig?
>
>"Steve Jacobson"  wrote in message

>> I don't follow your question.  Please elaborate, and let
>> me know which question you are asking about.
>>
>> SteveJ
>>
>> In article 
>> Rene Patnode  wrote:
>> >When it comes to picking reasonable values for next hop, are we assuming
>> >that the ports lead directly to the networks in question or lead by a
>direct
>> >link to a router in those networks?
>> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Sun, 2 Feb 2003 13:00:08 -0800
Lines: 78
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044219612 28783 128.12.85.0 (2 Feb 2003 21:00:12 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4263

I guess you're not understanding my question then:

In the routing table as depicted in class, there is a next hop IP address,
which signifies the IP address of the next router on the path to the
destination. Therefore it is important whether the router is attached
directly to the network, because if it is then there is no next hop, but if
it isn't, we have have to construct an imaginary network for the link that
lies between the this router and the next hop. It is this next hop IP
address that I am asking about.

My previous question is:
ifconfig seems to be the utility that returns subnet masks. ifconfig takes
an interface name as its chief argument. However, host only returns IP
addresses. Where do we get the interface names from? I still don't see
anything about that in the man pages.


"Steve Jacobson"  wrote in message

> I don't see what difference it could make, attaching directly
> to the destination network or attaching to an additional router.
>
> Under normal circumstances, a router does not change either IP address
> (or port number) in the IP header.  Those values remain constant from
> one end of an internet to the other.  You can assume normal circumstances
> here.
>
> The router in question is responsible for forwarding packets it
> receives to the correct ports.  Whether the network of interest is
> directly attached this router does not affect this router's behavior
> (or the contents of its routing table) at all.
>
> Which ifconfig question remains unanswered?
>
> SteveJ
>
> In article 
> Rene Patnode  wrote:
> >I'm asking about the question which is the topic of this thread...
> >
> >When Rafael asked about what the entries should be for the next hops,
> >Matthew responded and said to pick something reasonable. However what is
> >reasonable depends on whether the ports in question (1,2, or 3) lead
> >directly to the networks in question (X or Y)-- that is, the router has
an
> >interface on that network--or if the ports lead to peer to peer links
with
> >other routers that do lie in those networks. In the former case, it seems
as
> >though the port itself would be the next hop, but in the latter, we have
to
> >invent an IP address in some other network.
> >
> >Also, would it be possible to get a response to my previous question
about
> >ifconfig?
> >
> >"Steve Jacobson"  wrote in message
> 
> >> I don't follow your question.  Please elaborate, and let
> >> me know which question you are asking about.
> >>
> >> SteveJ
> >>
> >> In article 
> >> Rene Patnode  wrote:
> >> >When it comes to picking reasonable values for next hop, are we
assuming
> >> >that the ports lead directly to the networks in question or lead by a
> >direct
> >> >link to a router in those networks?
> >> >
> >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Problem Set 2 #6
Date: Sun, 2 Feb 2003 15:46:19 -0800
Lines: 21
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044229581 3856 128.12.85.0 (2 Feb 2003 23:46:21 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4264

For part b, do we tell traceroute to use ten packets per query AND calculate
the average rtt, or to use ten packets per query and then we calculate the
average rtt ourselves. I see a -S option in the man pages, but it doesn't
seem to do exactly what we want it to do.

For parts d through f, how should we estimate distance? Do we just take half
of the average rtt, and divide through by the speed of light? Or do we have
to take into a account other things as well?

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Go-back-N numbers
Date: Sun, 02 Feb 2003 15:46:20 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044229583 3789 128.12.187.58 (2 Feb 2003 23:46:23 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4265


	I think I recall someone asking something similar, but I can't
seem to find the post, so sorry in advance if I'm asking something
really stupid. Anyways, do you have to coalesce packets when you
"Go-back-N?" That is, if I have five one-hundred-byte packets that
were transmitted and the first one timed out, do I re-transmit all
five one-hundred byte packets or do I have to coalesce them into one
packet? And if I do the latter, is the # of times retransmitted then
initialized to the # of times I retransmitted the first one?
.

Path: shelby.stanford.edu!not-for-mail
From: Susan Noreen Shepard 
Newsgroups: su.class.cs244a
Subject: Re: Problem Set 2 #6
Date: Mon, 3 Feb 2003 01:06:05 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1044234365 6534 171.64.15.101 (3 Feb 2003 01:06:05 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4266

I have another distance question about 6b:
When it says to estimate the distance across the Atlantic Ocean, are we
just supposed to calculate the distance from the East coast of the USA to
England or the distance from Stanford to Cambridge?  I'm assuming it's the
first intrepretation.

Susan
.

Path: shelby.stanford.edu!saga14.Stanford.EDU!priyank9
From: Priyank Kshitij Patel 
Newsgroups: su.class.cs244a
Subject: strange test results
Date: Sun, 2 Feb 2003 17:28:39 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga14.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044235721 7307 171.64.15.144 (3 Feb 2003 01:28:41 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4267

Hi,

I ran my program on the test script for hw2b and it strangely passes all
tests except

student transmitter against student receiver!!!!

My receiver passes the test against the ref. transmitter and viceversa.
This is strange, because before submitting my code for the test, the only
test wich i made was
my transmitter against my receiver, which is running fine.
The test script however does something which causes my program to hang.

I was wondering if you guys are using another versiioon of the unreliable
network.c while testing.. If yes, could you please let me know how is it
different from the network.c provided to us.

Priyank

.

Path: shelby.stanford.edu!saga14.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Sun, 2 Feb 2003 19:10:29 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga14.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044241835 10606 171.64.15.144 (3 Feb 2003 03:10:35 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4268

> > For example, we may have two packets in receiver's buffer.
> >
> > Packet #1: th_seq = 100, data_len = 20;
> > Packet #2: th_seq = 150, data_len = 50;
> >
> > then here comes a packet #3 with th_seq = 110 and data_len = 250, which
> > partially overlapped with packet #1 and completely contains packet #2.
> >
> > If we must take care of packets with overlapping data, shall we honor the
> > data from earlier packets or the latest packets?
> >
>
> Assuming that you are aligning sequence numbers, the overlapping data from
> the two packets will be identical.

Hmm, I don't quite get it. Do we make new packets in the receiver's
buffer:

Packet #3: th_seq = 120, data_len = 30;
Packet #4: th_seq = 200, data_len = 160;

or do we ignore the packet?

thanks

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: strange test results
Date: Sun, 2 Feb 2003 21:19:31 -0800
Lines: 29
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044249533 14061 128.12.195.69 (3 Feb 2003 05:18:53 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4269

I am having the same problem. Testing my own transimtter against my own
receiver works fine, but when it is checked by case 2.J it always fails.

-myl


"Priyank Kshitij Patel"  wrote in message

> Hi,
>
> I ran my program on the test script for hw2b and it strangely passes all
> tests except
>
> student transmitter against student receiver!!!!
>
> My receiver passes the test against the ref. transmitter and viceversa.
> This is strange, because before submitting my code for the test, the only
> test wich i made was
> my transmitter against my receiver, which is running fine.
> The test script however does something which causes my program to hang.
>
> I was wondering if you guys are using another versiioon of the unreliable
> network.c while testing.. If yes, could you please let me know how is it
> different from the network.c provided to us.
>
> Priyank
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem set #2 Question 2
Date: Mon, 3 Feb 2003 05:34:11 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 77
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044250451 14509 171.64.15.112 (3 Feb 2003 05:34:11 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4270

I understand the confustion now.

The IP addresses in the IP packet header remain constant from
source to destination.  This is true whether the packet passes
through 0 routers, or through 100.

Assuming the packet is not fragmented, the only fields a router
will change in the IP header are the TTL and the checksum.  Even
if fragmentation occurs, the IP addresses are never changed.

(An exception:  NAT [network address translation] which is an
abnormal circumstance, and is _way_ beyond the scope of this
question.  We will mention NAT later in the course.)

You may be thinking of the link layer addresses, which do change
for every hop a packet takes.  However, those are in the data link
layer header, so they are not relevant to this question.

Correction to an error below:  I mentioned that the "port number
in the IP header" never changes.  There is no port number in the
IP header.  Nothing in the payload of an IP packet is changed by a
router.  So, if that payload happens to be a UDP datagram, nothing
in that datagram is changed by a router, including the port number
in the header.


In article 
Rene Patnode  wrote:
>I guess you're not understanding my question then:
>
>In the routing table as depicted in class, there is a next hop IP address,
>which signifies the IP address of the next router on the path to the
>destination. Therefore it is important whether the router is attached
>directly to the network, because if it is then there is no next hop, but if
>it isn't, we have have to construct an imaginary network for the link that
>lies between the this router and the next hop. It is this next hop IP
>address that I am asking about.
>
>My previous question is:
>ifconfig seems to be the utility that returns subnet masks. ifconfig takes
>an interface name as its chief argument. However, host only returns IP
>addresses. Where do we get the interface names from? I still don't see
>anything about that in the man pages.

host can do either a DNS or a reverse DNS lookup.  That is, given a name
it can return the IP address associated with that name.  Given an IP address,
it can return the hostname associated with that address.  Look at the man
page and do some experimentation with the options.

Keep in mind that host can only return information known to the DNS system.
I don't think the ports of a router have names that are different from the
name of the router itself.  If anyone knows differently, please correct me.
Also, if DNS does not know of a name associated with an IP address, the host
command can't give you a name.

SteveJ

>
>
>"Steve Jacobson"  wrote in message

>> I don't see what difference it could make, attaching directly
>> to the destination network or attaching to an additional router.
>>
>> Under normal circumstances, a router does not change either IP address
>> (or port number) in the IP header.  Those values remain constant from
>> one end of an internet to the other.  You can assume normal circumstances
>> here.
>>
>> The router in question is responsible for forwarding packets it
>> receives to the correct ports.  Whether the network of interest is
>> directly attached this router does not affect this router's behavior
>> (or the contents of its routing table) at all.
>>
>> Which ifconfig question remains unanswered?
>>
>> SteveJ
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set 2 #6
Date: Mon, 3 Feb 2003 05:41:18 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 36
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044250878 14717 171.64.15.112 (3 Feb 2003 05:41:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4271

In article 
Rene Patnode  wrote:
>For part b, do we tell traceroute to use ten packets per query AND calculate
>the average rtt, or to use ten packets per query and then we calculate the
>average rtt ourselves. I see a -S option in the man pages, but it doesn't
>seem to do exactly what we want it to do.

I haven't tried the -S option; certainly you can calculate the
average RTT yourself from the values supplied by traceroute.

>
>For parts d through f, how should we estimate distance? Do we just take half
>of the average rtt, and divide through by the speed of light? Or do we have
>to take into a account other things as well?

Clearly you can't obtain a super-accurate estimate from traceroute,
but you should be able to derive an upper bound on distance from
the information it provides.

SteveJ

>
>--
>____________________________________________
>Rene Patnode
>Stanford University
>
>Computer Science
>Phi Kappa Psi
>Resident Assistant, Cardenal
>
>"Mmm... unexplained bacon." - Homer Simpson
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Go-back-N numbers
Date: Mon, 3 Feb 2003 05:55:04 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044251704 15387 171.64.15.112 (3 Feb 2003 05:55:04 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4272

My understanding is that coalescing packets is "nicer," but is
not a requirement.

If you do coalesce, then counting retransmissions becomes a bit
more complex.  I suggest that you "do something reasonable"
and document it.  Other TAs, any comments?

SteveJ

In article 
Peter Lai   wrote:
>
>	I think I recall someone asking something similar, but I can't
>seem to find the post, so sorry in advance if I'm asking something
>really stupid. Anyways, do you have to coalesce packets when you
>"Go-back-N?" That is, if I have five one-hundred-byte packets that
>were transmitted and the first one timed out, do I re-transmit all
>five one-hundred byte packets or do I have to coalesce them into one
>packet? And if I do the latter, is the # of times retransmitted then
>initialized to the # of times I retransmitted the first one?


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set 2 #6
Date: Mon, 3 Feb 2003 05:56:19 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 15
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044251779 15415 171.64.15.112 (3 Feb 2003 05:56:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4273

Yes, the first interpretation.

SteveJ

In article 
Susan Noreen Shepard   wrote:
>I have another distance question about 6b:
>When it says to estimate the distance across the Atlantic Ocean, are we
>just supposed to calculate the distance from the East coast of the USA to
>England or the distance from Stanford to Cambridge?  I'm assuming it's the
>first intrepretation.
>
>Susan


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Mon, 3 Feb 2003 06:22:12 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 55
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044253332 16345 171.64.15.112 (3 Feb 2003 06:22:12 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4274

Comments below:

In article 
Rhea Sherman Mortam   wrote:
>> > For example, we may have two packets in receiver's buffer.
>> >
>> > Packet #1: th_seq = 100, data_len = 20;
>> > Packet #2: th_seq = 150, data_len = 50;
>> >
>> > then here comes a packet #3 with th_seq = 110 and data_len = 250, which
>> > partially overlapped with packet #1 and completely contains packet #2.
>> >
>> > If we must take care of packets with overlapping data, shall we honor the
>> > data from earlier packets or the latest packets?
>> >
>>
>> Assuming that you are aligning sequence numbers, the overlapping data from
>> the two packets will be identical.
>
>Hmm, I don't quite get it. Do we make new packets in the receiver's
>buffer:
>
>Packet #3: th_seq = 120, data_len = 30;
>Packet #4: th_seq = 200, data_len = 160;
>
>or do we ignore the packet?
>
>thanks
>

Let me elaborate on your original question:

>> > Packet #1: th_seq = 100, data_len = 20;
>> > Packet #2: th_seq = 150, data_len = 50;
>> >
>> > then here comes:

     packet #3 with th_seq = 110 and data_len = 250, which

When duplicate data arrives, you only need to retain one
copy.  Since the data is supposed to be the same for each
duplicated byte, which copy you save is really the designer's
(your) choice.  How you store the data before sending it up to
the application is also up to you.  You want to strive for a
clean solution that is easy to understand and debug.

Conceptually, you have one contiguous block of bytes from
100 to 360, inclusive.  How you manage the actual bytes depends
on your transport design.

You cannot ignore the third packet, because it contains bytes
[121, 149] and [201, 360], which you did not previously have.

SteveJ

.

Path: shelby.stanford.edu!saga19.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Is my STCP impelmentation reliable enough?
Date: Sun, 2 Feb 2003 22:36:42 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044254203 16670 171.64.15.149 (3 Feb 2003 06:36:43 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4275

When I use my test my code with some "large" (>800k) files, I inevitably
break down when I've retransmitted the alloted amount. Since I can't
transfer large files, I would think that my implementation isn't "good
enough" -- especially for part c, since then I might be transferring large
files pretty consistently.

That said, when I ran the test suite, the summary screen says "OK" for all
the tests, even though when I look at the output scrolling above, it often
shows my assert(0 && "Retransmitted too many times"). Should I assume that
this behavior is okay?



.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Calculating the RTT and truncated packets
Date: Sun, 2 Feb 2003 22:36:11 -0800
Lines: 25
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044254227 16678 171.64.15.100 (3 Feb 2003 06:37:07 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4276

Hi,
1.) If a sender sends packets with sequences 100, 200, 300, 400 and
receives ACK=400, (assuming the ACKs for 1st, and 2nd packet are lost) the
only packet it can use in order to
calculate the new RTT is packet with sequence 300, is that correct?

2.) It says in the assignment that we have to be careful with packets
that may fall partially into our window but I'm wondering in what
cases do this occur. I understand that a packet may cross our
window left side if it has been retransmitted/duplicated but I
don't understand the case of a packet ever crossing our right border.
The sender has to take care never to cross that border so why should the
receiver care about that case? It should not happen in the first place.

If there is such a case then I guess the behavior is to ack
up to our right side and discard the rest of the data but then what
does it mean to ACK half of a packet? how can the sender calculate
any RTT out of half a packet being acknowledged?
Do we have to take care of the case the receiver acknowledging only half
of the data we send in a packet?.

Thanks
Rafa


.

Path: shelby.stanford.edu!saga19.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Re: Calculating the RTT and truncated packets
Date: Sun, 2 Feb 2003 22:51:12 -0800
Lines: 38
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044255073 17177 171.64.15.149 (3 Feb 2003 06:51:13 GMT)
X-Complaints-To: 
To: Rafael M Hernandez 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4277

> 1.) If a sender sends packets with sequences 100, 200, 300, 400 and
> receives ACK=400, (assuming the ACKs for 1st, and 2nd packet are lost) the
> only packet it can use in order to
> calculate the new RTT is packet with sequence 300, is that correct?

I'm curious as to the TAs, but here was what I thought:

Option one: use the ACK400 as a determination of the seq300 packet, and
that's a decent round trip.

Option two: Use the ACK400 to sample RTT for seg100, seg200, and seg300.
Why? Assuming no retransmissions on my part, I don't actually know if the
seg300 was the last to be received. Perhpas the others were ... and thus
the "congestion" in the network that caused out-of-order arrival would
be factored into my computation of a new estimatee for RTT. Of course, I'd
be careful *not* to allow a retransmission for seg100 or seg200 to be used
to update the estimate.

I chose option two. Is that bad?


> 2.) It says in the assignment that we have to be careful with packets
> that may fall partially into our window but I'm wondering in what
> cases do this occur. I understand that a packet may cross our
> window left side if it has been retransmitted/duplicated but I
> don't understand the case of a packet ever crossing our right border.
> The sender has to take care never to cross that border so why should the
> receiver care about that case? It should not happen in the first place.
Yep. But a sender might, and it's probably good to be caseful of that.

> If there is such a case then I guess the behavior is to ack
> up to our right side and discard the rest of the data but then what
> does it mean to ACK half of a packet? how can the sender calculate
> any RTT out of half a packet being acknowledged?
Don't think of ACKing packets ... think of ACKing data. As for the sender,
s/he shouldn't ever send beyond the receiver window (as above "it should
not happen in the first place") so don't worry about that in your code! :)

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: Calculating the RTT and truncated packets
Date: Sun, 2 Feb 2003 23:12:02 -0800
Lines: 61
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044256324 18042 171.64.15.100 (3 Feb 2003 07:12:04 GMT)
X-Complaints-To: 
To: Jonathan D Herbach 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4278

On Sun, 2 Feb 2003, Jonathan D Herbach wrote:

> > 1.) If a sender sends packets with sequences 100, 200, 300, 400 and
> > receives ACK=400, (assuming the ACKs for 1st, and 2nd packet are lost) the
> > only packet it can use in order to
> > calculate the new RTT is packet with sequence 300, is that correct?
>
> I'm curious as to the TAs, but here was what I thought:
>
> Option one: use the ACK400 as a determination of the seq300 packet, and
> that's a decent round trip.
>
> Option two: Use the ACK400 to sample RTT for seg100, seg200, and seg300.
> Why? Assuming no retransmissions on my part, I don't actually know if the
> seg300 was the last to be received. Perhpas the others were ... and thus
> the "congestion" in the network that caused out-of-order arrival would
> be factored into my computation of a new estimatee for RTT. Of course, I'd
> be careful *not* to allow a retransmission for seg100 or seg200 to be used
> to update the estimate.
>
> I chose option two. Is that bad?
>

Actually, there's a third option:
According to Steven's 'TCP/IP Illustrated, Volume 1. The protocols"
the RTT is measured between sending a byte with a particular sequence
number and receiving and ACK that covers that sequence number. Therefore
TCP will use as RTT the time between sending packet with seq # 100 and
receiving the ACK=400.
But I don't know if this is the behavior expected for our STCP or
if it is either options one or two.


>
> > 2.) It says in the assignment that we have to be careful with packets
> > that may fall partially into our window but I'm wondering in what
> > cases do this occur. I understand that a packet may cross our
> > window left side if it has been retransmitted/duplicated but I
> > don't understand the case of a packet ever crossing our right border.
> > The sender has to take care never to cross that border so why should the
> > receiver care about that case? It should not happen in the first place.
> Yep. But a sender might, and it's probably good to be caseful of that.
>
> > If there is such a case then I guess the behavior is to ack
> > up to our right side and discard the rest of the data but then what
> > does it mean to ACK half of a packet? how can the sender calculate
> > any RTT out of half a packet being acknowledged?
> Don't think of ACKing packets ... think of ACKing data. As for the sender,
> s/he shouldn't ever send beyond the receiver window (as above "it should
> not happen in the first place") so don't worry about that in your code! :)
>

I'm thinking about packets because for STCP we have always been
talking about packets in order to calculate RTTs.
And, also, because we still don't have an answer regarding coalescing
of packets and what should we do about retransmissions. If you coalesce
data that was retransmitted with data that was not and send it in a new
packet, what is the retransmission status for that packet?

Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: "Akash Jain" 
Newsgroups: su.class.cs244a
Subject: problem 6, part g
Date: Sun, 02 Feb 2003 23:12:07 -0800
Organization: Stanford University
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab40e3f2.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
X-Trace: news.Stanford.EDU 1044256330 18047 171.64.227.242 (3 Feb 2003 07:12:10 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.0 (The whole remains beautiful)
Xref: shelby.stanford.edu su.class.cs244a:4279

the router:
bas1-m.pao.yahoo.com doesn't seem to exist (host it)

i tried using:
base1-m.dcn.yahoo.com but that returns a !S - source routing error
somewhere in the level3 net path...
what should we do?
-aki-
.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Re: problem 6, part g
Date: Mon, 3 Feb 2003 00:04:37 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1044259488 19513 128.12.181.52 (3 Feb 2003 08:04:48 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4280

comment: but the ip address given seems to work though and if you host that
it does give bas1-m.pao.yahoo.com...

Metha

"Akash Jain"  wrote in message

> the router:
> bas1-m.pao.yahoo.com doesn't seem to exist (host it)
>
> i tried using:
> base1-m.dcn.yahoo.com but that returns a !S - source routing error
> somewhere in the level3 net path...
> what should we do?
> -aki-


.

Path: shelby.stanford.edu!not-for-mail
From: Dale Neal 
Newsgroups: su.class.cs244a
Subject: Re: problem 6, part g
Date: Mon, 03 Feb 2003 00:07:47 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: masamune.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044259680 19567 128.12.110.70 (3 Feb 2003 08:08:00 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4281

Hmm... it existed for me just two days ago. I could never get the 
traceroute to go all the way to www.eecs.berkeley.edu, though. It would 
get stopped one or two routers short. At 
evans-soda-br-5-4.EECS.Berkeley.EDU to be precise. Does anybody else 
have this problem?

Akash Jain wrote:
> the router:
> bas1-m.pao.yahoo.com doesn't seem to exist (host it)
> 
> i tried using:
> base1-m.dcn.yahoo.com but that returns a !S - source routing error
> somewhere in the level3 net path...
> what should we do?
> -aki-


.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: A couple of questions on problem set 2
Date: Mon, 3 Feb 2003 00:19:18 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1044260369 20420 128.12.181.52 (3 Feb 2003 08:19:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4282

Regarding #1:

After reading the previous posts on ifconfig (and the man page on it), I'm
still confused as to how to use it properly.  It seems to me that ifconfig
can only give statistics on the interface for the local machine that you are
on, is this correct? If so, how are we supposed to determine the statistics
(I have the netmask in mind)  for the other 3 routers en route to
www.mit.edu?

Regarding #5:

What does "from every other router" mean?  Are we supposed to skip some
nodes when running the algorithm?  Or does it mean every nodes except the
node 7?

Thanks!

Metha


.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Re: problem 6, part g
Date: Mon, 3 Feb 2003 00:24:41 -0800
Lines: 27
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1044260692 20536 128.12.181.52 (3 Feb 2003 08:24:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4283

You mean traceroute from the yahoo's router to eecs.berkeley right? (because
it seems to work fine from elaine) If so, I have this same problem, but I
guess we can determine where it should go next after that, since the routing
entry for www.eecs.berkeley.edu at that node should be the same (in steady
state) no matter where you come from, right?

"Dale Neal"  wrote in message

> Hmm... it existed for me just two days ago. I could never get the
> traceroute to go all the way to www.eecs.berkeley.edu, though. It would
> get stopped one or two routers short. At
> evans-soda-br-5-4.EECS.Berkeley.EDU to be precise. Does anybody else
> have this problem?
>
> Akash Jain wrote:
> > the router:
> > bas1-m.pao.yahoo.com doesn't seem to exist (host it)
> >
> > i tried using:
> > base1-m.dcn.yahoo.com but that returns a !S - source routing error
> > somewhere in the level3 net path...
> > what should we do?
> > -aki-
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: A couple of questions on problem set 2
Date: Mon, 3 Feb 2003 00:34:42 -0800
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044261352 20754 128.12.186.92 (3 Feb 2003 08:35:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4284


>
> Regarding #5:
>
> What does "from every other router" mean?  Are we supposed to skip some
> nodes when running the algorithm?  Or does it mean every nodes except the
> node 7?


The bellman-ford algorithm is a distributed algorithm meaning node R1 will
know the distances to every other node in the network (including its
distance to R7).

In order to answer the question, we will have to look at the global state of
the bellman-ford algorithm because we want to know for all nodes, the
distance for each of them to route a packet to R7.


>
> Thanks!
>
> Metha
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Is my STCP impelmentation reliable enough?
Date: Mon, 3 Feb 2003 00:37:24 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044261514 20783 128.12.186.92 (3 Feb 2003 08:38:34 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4285

Are other people seeing this behavior?  I think the transport layer should
be able to handle more than 800k without giving out.  As you pointed out,
while you might pass the tests for part b, part c will involve transferring
large files.

--Russ

"Jonathan D Herbach"  wrote in message

> When I use my test my code with some "large" (>800k) files, I inevitably
> break down when I've retransmitted the alloted amount. Since I can't
> transfer large files, I would think that my implementation isn't "good
> enough" -- especially for part c, since then I might be transferring large
> files pretty consistently.
>
> That said, when I ran the test suite, the summary screen says "OK" for all
> the tests, even though when I look at the output scrolling above, it often
> shows my assert(0 && "Retransmitted too many times"). Should I assume that
> this behavior is okay?
>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Go-back-N numbers
Date: Mon, 3 Feb 2003 01:04:21 -0800
Lines: 32
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044263132 21394 128.12.186.92 (3 Feb 2003 09:05:32 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4286

There is no coalescing requirement in the assignment.  I agree with Steve
that the solution with coalescing packets is nicer but you should make sure
you have retransmissions working AS IS before attempting anything fancy.

--Russ

"Steve Jacobson"  wrote in message

> My understanding is that coalescing packets is "nicer," but is
> not a requirement.
>
> If you do coalesce, then counting retransmissions becomes a bit
> more complex.  I suggest that you "do something reasonable"
> and document it.  Other TAs, any comments?
>
> SteveJ
>
> In article 
> Peter Lai   wrote:
> >
> > I think I recall someone asking something similar, but I can't
> >seem to find the post, so sorry in advance if I'm asking something
> >really stupid. Anyways, do you have to coalesce packets when you
> >"Go-back-N?" That is, if I have five one-hundred-byte packets that
> >were transmitted and the first one timed out, do I re-transmit all
> >five one-hundred byte packets or do I have to coalesce them into one
> >packet? And if I do the latter, is the # of times retransmitted then
> >initialized to the # of times I retransmitted the first one?
>
>


.

Path: shelby.stanford.edu!saga1.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Is my STCP impelmentation reliable enough?
Date: Mon, 3 Feb 2003 19:36:38 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 30
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga1.stanford.edu
X-Trace: news.Stanford.EDU 1044300998 8011 171.64.15.131 (3 Feb 2003 19:36:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4287

As Russ pointed out in a later post, you do want your implementation
to be solid for large file transfers.

The triggering of your assert during the tests does not sound good.
I'm surprised it doesn't lead to a failure to move data, which would
cause a script failure.

As an experiment, you can try increasing your retry intervals.  If
this doesn't change the problem, then you may have a subtle bug
in your code.

SteveJ
 
In article 
Jonathan D Herbach   wrote:
>When I use my test my code with some "large" (>800k) files, I inevitably
>break down when I've retransmitted the alloted amount. Since I can't
>transfer large files, I would think that my implementation isn't "good
>enough" -- especially for part c, since then I might be transferring large
>files pretty consistently.
>
>That said, when I ran the test suite, the summary screen says "OK" for all
>the tests, even though when I look at the output scrolling above, it often
>shows my assert(0 && "Retransmitted too many times"). Should I assume that
>this behavior is okay?
>
>
>


.

Path: shelby.stanford.edu!saga1.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Calculating the RTT and truncated packets
Date: Mon, 3 Feb 2003 19:43:01 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 48
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga1.stanford.edu
X-Trace: news.Stanford.EDU 1044301381 8318 171.64.15.131 (3 Feb 2003 19:43:01 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4288

In article 
Rafael M Hernandez   wrote:
>Hi,
>1.) If a sender sends packets with sequences 100, 200, 300, 400 and
>receives ACK=400, (assuming the ACKs for 1st, and 2nd packet are lost) the
>only packet it can use in order to
>calculate the new RTT is packet with sequence 300, is that correct?

That would give you the most accurate value.

>
>2.) It says in the assignment that we have to be careful with packets
>that may fall partially into our window but I'm wondering in what
>cases do this occur. I understand that a packet may cross our
>window left side if it has been retransmitted/duplicated but I
>don't understand the case of a packet ever crossing our right border.
>The sender has to take care never to cross that border so why should the
>receiver care about that case? It should not happen in the first place.

You should not assume that the transmitter will follow the rules
when you design your receiver.  

>
>If there is such a case then I guess the behavior is to ack
>up to our right side and discard the rest of the data 

Yes.

 but then what
>does it mean to ACK half of a packet? how can the sender calculate
>any RTT out of half a packet being acknowledged?

Do something reasonable and document it.

>Do we have to take care of the case the receiver acknowledging only half
>of the data we send in a packet?.

Yes.

SteveJ

>
>Thanks
>Rafa
>
>


.

Path: shelby.stanford.edu!saga1.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Calculating the RTT and truncated packets
Date: Mon, 3 Feb 2003 19:47:59 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 53
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga1.stanford.edu
X-Trace: news.Stanford.EDU 1044301679 8469 171.64.15.131 (3 Feb 2003 19:47:59 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4289

Comments below:

In article 
Jonathan D Herbach   wrote:
>> 1.) If a sender sends packets with sequences 100, 200, 300, 400 and
>> receives ACK=400, (assuming the ACKs for 1st, and 2nd packet are lost) the
>> only packet it can use in order to
>> calculate the new RTT is packet with sequence 300, is that correct?
>
>I'm curious as to the TAs, but here was what I thought:
>
>Option one: use the ACK400 as a determination of the seq300 packet, and
>that's a decent round trip.
>
>Option two: Use the ACK400 to sample RTT for seg100, seg200, and seg300.
>Why? Assuming no retransmissions on my part, I don't actually know if the
>seg300 was the last to be received. Perhpas the others were ... and thus
>the "congestion" in the network that caused out-of-order arrival would
>be factored into my computation of a new estimatee for RTT. Of course, I'd
>be careful *not* to allow a retransmission for seg100 or seg200 to be used
>to update the estimate.

To clarify, retransmissions for 100 or 200 should not occur after the
ACK 400 is received.

I don't have strong opinions on how to determine RTT in unusual
cases.  Other TAs, any thoughts?

SteveJ

>
>I chose option two. Is that bad?
>
>
>> 2.) It says in the assignment that we have to be careful with packets
>> that may fall partially into our window but I'm wondering in what
>> cases do this occur. I understand that a packet may cross our
>> window left side if it has been retransmitted/duplicated but I
>> don't understand the case of a packet ever crossing our right border.
>> The sender has to take care never to cross that border so why should the
>> receiver care about that case? It should not happen in the first place.
>Yep. But a sender might, and it's probably good to be caseful of that.
>
>> If there is such a case then I guess the behavior is to ack
>> up to our right side and discard the rest of the data but then what
>> does it mean to ACK half of a packet? how can the sender calculate
>> any RTT out of half a packet being acknowledged?
>Don't think of ACKing packets ... think of ACKing data. As for the sender,
>s/he shouldn't ever send beyond the receiver window (as above "it should
>not happen in the first place") so don't worry about that in your code! :)
>


.

Path: shelby.stanford.edu!saga1.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: A couple of questions on problem set 2
Date: Mon, 3 Feb 2003 19:51:47 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 37
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga1.stanford.edu
X-Trace: news.Stanford.EDU 1044301907 8624 171.64.15.131 (3 Feb 2003 19:51:47 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4290

In article 
Metha Jeeradit  wrote:
>Regarding #1:
>
>After reading the previous posts on ifconfig (and the man page on it), I'm
>still confused as to how to use it properly.  It seems to me that ifconfig
>can only give statistics on the interface for the local machine that you are
>on, is this correct?

That is my understanding.

 If so, how are we supposed to determine the statistics
>(I have the netmask in mind)  for the other 3 routers en route to
>www.mit.edu?

Use host and traceroute to discover or infer the information as
best you can.

>
>Regarding #5:
>
>What does "from every other router" mean?  Are we supposed to skip some
>nodes when running the algorithm?  Or does it mean every nodes except the
>node 7?

From every router but router 7.

SteveJ

>
>Thanks!
>
>Metha
>
>


.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: strange test results
Date: Mon, 3 Feb 2003 21:28:06 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1044307686 12408 171.64.15.100 (3 Feb 2003 21:28:06 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4291

The test script doesn't do anything particularly unusual; all it does is
run both client and server in unreliable mode, checking that you downloaded
the given file(s) correctly.  You can even run the same commands as the
script, since they're given in the script output.

The network.o used is built from the regular network.c, unchanged.
.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Is my STCP impelmentation reliable enough?
Date: Mon, 3 Feb 2003 21:56:07 +0000 (UTC)
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1044309367 13464 171.64.15.100 (3 Feb 2003 21:56:07 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4292

Jonathan D Herbach  writes:

>When I use my test my code with some "large" (>800k) files, I inevitably
>break down when I've retransmitted the alloted amount. Since I can't
>transfer large files, I would think that my implementation isn't "good
>enough" -- especially for part c, since then I might be transferring large
>files pretty consistently.

>That said, when I ran the test suite, the summary screen says "OK" for all
>the tests, even though when I look at the output scrolling above, it often
>shows my assert(0 && "Retransmitted too many times"). Should I assume that
>this behavior is okay?


The current test cases transfer only up to a 300KB file.  The assert() you
mention is expected in some cases (e.g. the Go-back N and retransmission
tests); it's not expected in parts B/C/J (i.e. those that just check general
transport layer functionality), since those parts check for correctness of the
downloaded file (which presumably wouldn't be satisfied if you assert
prematurely during the download).

I think a fully correct solution (i.e. something that passes all test cases
checked by the script) should be able to transfer much larger files than this,
e.g. the reference transferred up to 800 KB with both client and server
running in unreliable mode when I tried just now.
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Office hours 30 min late today...
Date: Tue, 4 Feb 2003 01:01:53 +0000 (UTC)
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1044320513 21468 171.64.15.77 (4 Feb 2003 01:01:53 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4293

....apologies for the inconvenience!

  Guido
.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: bug in part (C)
Date: Tue, 4 Feb 2003 01:18:09 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1044321489 22364 171.64.15.100 (4 Feb 2003 01:18:09 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4294

If anyone's working on part (C) and using the provided libftpcopy.a rather
than their own ftpcopy solution from HW1, there seem to be a couple of
problems in the implementation of ftpcopy; some non-matching files are
downloaded.  This causes one or two of the later test cases to fail.  (This
doesn't impact the STCP aspect of the provided library, which is working
correctly).

I'll post on here if/when I fix the problem.
.

Path: shelby.stanford.edu!elaine29.Stanford.EDU!nishant
From: Nishant Verman 
Newsgroups: su.class.cs244a
Subject: CWND / ERTT
Date: Mon, 3 Feb 2003 18:11:03 -0800
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine29.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044324690 24387 171.64.15.104 (4 Feb 2003 02:11:30 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4295

How can we find the correct context_t for printing the RTT values?
Is the fid passed actually the pid of the thread?

None of the tests seem to care about this so I'm wondering if we actually
need to implement this?


Thanks,
Nishant


.

Path: shelby.stanford.edu!elaine23.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: 1a testing
Date: Tue, 4 Feb 2003 02:20:51 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 90
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine23.stanford.edu
X-Trace: news.Stanford.EDU 1044325251 24733 171.64.15.98 (4 Feb 2003 02:20:51 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4296



I'm fearful that this has already been covered in newsgroup, but maybe 
someone will have pity on me and answer again.  My part a is finally 
working (okay, I'm a slow learner, but I can get it eventually).  At 
least it works in my own server and client windows, even for large 
files; moreover, it passes all but the two most-critical tests.

So, what is the story on test 1B and 1C?  Despite the error message 
about the file not being accessable (presumably the testdata file?), 
Should I conclude that my transport layer has not followed the spec 
carefully enough to be used against the reference transmitter/receiver; 
that is, keep digging???

Thanks...Keith



======================================================================
Summary prepared for primdahl
======================================================================

Test 1.B [out of 10]
Checks student Tx (server) against reference Rx (client).

Results:  NOT OK

File size differs for /usr/class/cs244a/grading_script/hw2/TESTDATA.0!
(You downloaded 0 byte(s), expected 110230).
Client output:
server: ESTDATA.0,110230,Ok

----------------------------------------------------------------------

Test 1.C [out of 10]
Checks reference transmitter against student receiver.

Results:  NOT OK

Unexpected exit status -1.  Program output:
***Timeout expired during grading
Program output:

####Initiating a new connection now to 171.64.15.98:43003#### 
(sockfd=4)
server: ESTDATA.0,-1,File does not exist or access denied

----------------------------------------------------------------------

Test 1.D [out of 2.5]
Checks that Tx doesn't overflow receiver window.

Results:  OK
----------------------------------------------------------------------

Test 1.E [out of 2.5]
Checks that initial sequence number is set properly.

Results:  OK
----------------------------------------------------------------------

Test 1.F [out of 2.5]
Checks transport layer enforces correct receiver window.

Results:  OK
----------------------------------------------------------------------

Test 1.G [out of 5]
Checks that SYN is correctly ACKed.

Results:  OK
----------------------------------------------------------------------

Test 1.H [out of 5]
Checks that all packets are sent and ACKed before FIN.

Results:  OK
----------------------------------------------------------------------

Test 1.I [out of 5]
Checks that FIN is correctly ACKed.

Results:  OK
----------------------------------------------------------------------

Test 1.J [out of 14]
Checks student transmitter against student receiver.

Results:  OK
----------------------------------------------------------------------
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: ps2 7 "time between when P_{1} and P_{2} start arriving"
Date: Tue, 4 Feb 2003 02:27:33 +0000 (UTC)
Organization: Stanford University
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine35.stanford.edu
X-Trace: news.Stanford.EDU 1044325653 24933 171.64.15.110 (4 Feb 2003 02:27:33 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4297


Does the question want the time elasped from when the last bit of $P_{1}$ arrives and the first bit
of $P_{2}$ or the time between when the first bit of $P_{1}$ arrives and the first bit of $P_{2}$ arrives.

Assuming store and forward routers (should we be doing this?) the latter seems to always be $T$ if the
arrival rate is not so slow that the packets overlap. But the former seems to reflect the data rate $R_{1}$
of the router.
.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: smra-rtr-2
Date: Mon, 3 Feb 2003 18:50:15 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044327016 25708 128.12.85.0 (4 Feb 2003 02:50:16 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4298

The second router used in traffic from elaine25 is smra-rtr-2. However, if
you use host on this router, all you get is the single IP 171.64.1.36. How
can a router have only one address?

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: ps2 q1
Date: Mon, 3 Feb 2003 20:39:27 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044333526 1091 128.12.195.69 (4 Feb 2003 04:38:46 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4299

For q1, when I tried to traceroute to www.hp.com, I got the result "* * *"
from the 17th hop and onwards. What can do to discover the complete path?

Thanks.

-myl


.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: CWND / ERTT
Date: Tue, 4 Feb 2003 06:34:56 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine41.stanford.edu
X-Trace: news.Stanford.EDU 1044340496 4455 171.64.15.116 (4 Feb 2003 06:34:56 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4300

I don't think you need to worry about PIDs.  You can 
maintain the values as globals and print those.

The function itself needs to be present and functional
so that it can be called by grading software.

SteveJ

In article 
Nishant Verman   wrote:
>How can we find the correct context_t for printing the RTT values?
>Is the fid passed actually the pid of the thread?
>
>None of the tests seem to care about this so I'm wondering if we actually
>need to implement this?
>
>
>Thanks,
>Nishant
>
>


.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: smra-rtr-2
Date: Tue, 4 Feb 2003 06:39:16 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine41.stanford.edu
X-Trace: news.Stanford.EDU 1044340756 4535 171.64.15.116 (4 Feb 2003 06:39:16 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4301

The host command can only report what DNS knows.  It's fair
to assume that other ports exist on the router, but they have
not been reported to DNS.

SteveJ

In article 
Rene Patnode  wrote:
>The second router used in traffic from elaine25 is smra-rtr-2. However, if
>you use host on this router, all you get is the single IP 171.64.1.36. How
>can a router have only one address?
>
>--
>____________________________________________
>Rene Patnode
>Stanford University
>
>Computer Science
>Phi Kappa Psi
>Resident Assistant, Cardenal
>
>"Mmm... unexplained bacon." - Homer Simpson
>
>


.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: testing using test scripts...
Date: Mon, 3 Feb 2003 22:44:09 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044341050 4720 171.64.15.77 (4 Feb 2003 06:44:10 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4302


Hi...

Is there any way we can debug what might be going wrong using
the transmitter or reciever used in the automated test cases.

If I use my own server/client it seems to work fine. But some of the
automated tests don't.

thanks,
priyanka


.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: ps2 7 "time between when P_{1} and P_{2} start arriving"
Date: Tue, 4 Feb 2003 07:09:40 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine41.stanford.edu
X-Trace: news.Stanford.EDU 1044342580 5422 171.64.15.116 (4 Feb 2003 07:09:40 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4303

In article 
David Seetapun  wrote:
>
>Does the question want the time elasped from when the last bit of $P_{1}$ arrives and the first bit
>of $P_{2}$ or the time between when the first bit of $P_{1}$ arrives and the first bit of $P_{2}$ arrives.
>

The most relevant quantity appears to be the time between the
end of the first packet and the start of the second.  Clearly
state your assumptions and you should be OK.

>Assuming store and forward routers (should we be doing this?)

Store-and-forward is specified in the question.

SteveJ

 the latter seems to always be $T$ if the
>arrival rate is not so slow that the packets overlap. But the former seems to reflect the data rate $R_{1}$
>of the router.


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: testing using test scripts...
Date: Tue, 4 Feb 2003 07:26:40 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1044343600 410 171.64.15.74 (4 Feb 2003 07:26:40 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4304

Logging information to a file is one way.

SteveJ

In article 
Priyanka Gupta   wrote:
>
>Hi...
>
>Is there any way we can debug what might be going wrong using
>the transmitter or reciever used in the automated test cases.
>
>If I use my own server/client it seems to work fine. But some of the
>automated tests don't.
>
>thanks,
>priyanka
>
>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!mkalman
From: Mark Kalman 
Newsgroups: su.class.cs244a
Subject: blocking on read
Date: Tue, 4 Feb 2003 00:15:39 -0800
Lines: 21
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044346544 2458 171.64.15.117 (4 Feb 2003 08:15:44 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4305


Hi All and especially TAs,

Two questions:

1) Under what circumstances will a myread call (and the underlying read
call) return 0 ?

2) How can I tell if my local_data_sd is closed.

I am having trouble because myread doesn't always block when there is no
data available, it sometimes returns 0. I think that it must be because
the socket is somehow getting closed on the child side of the connection,
but it occurs when I haven't done anything to close the socket. Is there a
reason why a myread will return 0 when the socket is actually open?


Mark



.

Path: shelby.stanford.edu!not-for-mail
From: "Eric Ogren" 
Newsgroups: su.class.cs244a
Subject: Re: blocking on read
Date: Tue, 4 Feb 2003 00:32:26 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: eogren.stanford.edu
X-Trace: news.Stanford.EDU 1044347547 2859 128.12.95.90 (4 Feb 2003 08:32:27 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4306

This will happen if your transport layer segfaults - I'd take a look at it
in gdb or purify and make sure that's not happening.

Eric
(not a ta)

"Mark Kalman"  wrote in message

>
> Hi All and especially TAs,
>
> Two questions:
>
> 1) Under what circumstances will a myread call (and the underlying read
> call) return 0 ?
>
> 2) How can I tell if my local_data_sd is closed.
>
> I am having trouble because myread doesn't always block when there is no
> data available, it sometimes returns 0. I think that it must be because
> the socket is somehow getting closed on the child side of the connection,
> but it occurs when I haven't done anything to close the socket. Is there a
> reason why a myread will return 0 when the socket is actually open?
>
>
> Mark
>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: smra-rtr-2
Date: Tue, 4 Feb 2003 00:51:45 -0800
Lines: 39
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044348707 3227 128.12.85.0 (4 Feb 2003 08:51:47 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4307

If I do a reverse lookup on 171.64.1.36, I see that smra-rtr is an alias for
smra-rtr-2. Does that mean that these are the same router?

Also, in this particular case, is smra-rtr-2 the host name of the interface
upon which the packets come in from their source or go out to the
destination? Which of the two interfaces does traceroute return?

"Steve Jacobson"  wrote in message

> The host command can only report what DNS knows.  It's fair
> to assume that other ports exist on the router, but they have
> not been reported to DNS.
>
> SteveJ
>
> In article 
> Rene Patnode  wrote:
> >The second router used in traffic from elaine25 is smra-rtr-2. However,
if
> >you use host on this router, all you get is the single IP 171.64.1.36.
How
> >can a router have only one address?
> >
> >--
> >____________________________________________
> >Rene Patnode
> >Stanford University
> >
> >Computer Science
> >Phi Kappa Psi
> >Resident Assistant, Cardenal
> >
> >"Mmm... unexplained bacon." - Homer Simpson
> >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: ps2 q1
Date: Tue, 4 Feb 2003 01:26:15 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044350845 3853 128.12.186.92 (4 Feb 2003 09:27:25 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4308

*** means that there was no response to the probe within the given timeout
interval.  See the traceroute man page to learn how to set the timeout
interval.

--Russ

"Man Yu Lui"  wrote in message

> For q1, when I tried to traceroute to www.hp.com, I got the result "* * *"
> from the 17th hop and onwards. What can do to discover the complete path?
>
> Thanks.
>
> -myl
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Alexander Fontana 
Newsgroups: su.class.cs244a
Subject: resending after unaligned acks
Date: Tue, 04 Feb 2003 01:59:41 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine30.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044352782 4504 171.64.15.105 (4 Feb 2003 09:59:42 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4309

Suppose the following happens....

1) We send a packet with bytes i to k
2) We receive an ack up to byte j, where i < j < k.
3) The data in bytes j to k times out and needs to be resent.

In the interest of not having to construct a new packet and new header,
may we just resend all of the data starting at byte i?

Or is that too lazy?

Thanks,
Alex
.

Path: shelby.stanford.edu!epic19.Stanford.EDU!sansari
From: Saad Salman Ansari 
Newsgroups: su.class.cs244a
Subject: test 2.J, how can i isolate it?
Date: Tue, 4 Feb 2003 02:00:07 -0800
Lines: 31
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044352809 4568 171.64.15.54 (4 Feb 2003 10:00:09 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4310

Hi all!

I have tried to test both my client and server with files upto 16MB and it
transfers the files without incident on any number of runs (more than 50,
so far), but I still fail test 2.J. Here is the output of the test script.
I cannot seem to reproduce this error.

----------------------------------------------------------------------

Test 2.J [out of 14]
Checks student transmitter against student receiver.

Results:  NOT OK

Unexpected exit status -1.  Program output:
***Timeout expired during grading
Program output:

####Initiating a new connection now to 171.64.15.54:40790#### (sockfd=4)
server: TESTDATA.2,5098,Ok

----------------------------------------------------------------------

is TESTDATA.2 public? Any ideas as to how I can find out where my program
breaks?

thanks!

Saad


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: test 2.J, how can i isolate it?
Date: Tue, 4 Feb 2003 03:20:26 -0800
Lines: 40
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044357581 6763 128.12.195.69 (4 Feb 2003 11:19:41 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4311

Refer to the posting about "strange test results" At least two other people,
myself included, experienced this problem. I wonder if there is anyone who
is passing this test case?


"Saad Salman Ansari"  wrote in message

> Hi all!
>
> I have tried to test both my client and server with files upto 16MB and it
> transfers the files without incident on any number of runs (more than 50,
> so far), but I still fail test 2.J. Here is the output of the test script.
> I cannot seem to reproduce this error.
>
> ----------------------------------------------------------------------
>
> Test 2.J [out of 14]
> Checks student transmitter against student receiver.
>
> Results:  NOT OK
>
> Unexpected exit status -1.  Program output:
> ***Timeout expired during grading
> Program output:
>
> ####Initiating a new connection now to 171.64.15.54:40790#### (sockfd=4)
> server: TESTDATA.2,5098,Ok
>
> ----------------------------------------------------------------------
>
> is TESTDATA.2 public? Any ideas as to how I can find out where my program
> breaks?
>
> thanks!
>
> Saad
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: Re: ps2 q1
Date: Tue, 04 Feb 2003 07:44:02 -0800
Lines: 22
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1044373442 12678 128.12.91.22 (4 Feb 2003 15:44:02 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4312

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, 04 Feb 2003 01:26:15 -0800, "Russell Greene" 
wrote:

> *** means that there was no response to the probe within the given timeout
> interval.  See the traceroute man page to learn how to set the timeout
> interval.

I'm still getting "* * *" even with the timeout set to as high as 60
(seconds).  Should I just turn in the traceroute with the "* * *"?

Will
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+P9+x4uIcqiwjnrURAhrlAJ0Qut34UdjG2DZxv0GHIT2akr/xrwCgkTpC
b4EK0uI6wv5TWcFL9/PDe+U=
=xe7W
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!elaine29.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: window size
Date: Tue, 4 Feb 2003 17:43:49 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine29.stanford.edu
X-Trace: news.Stanford.EDU 1044380629 15765 171.64.15.104 (4 Feb 2003 17:43:49 GMT)
X-Complaints-To: 
Keywords: window size
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4313


If I had sent packets 1, 2, 3 each of letz say 100 bytes.
My sending wind size will be 3072 -300 bytes.

Suppose letz say packet 1 times out and I have
to resend 1,2 and 3.

what will be my sender's window size?
3072-500  (assuming packet 1 got dropped)
or still 3072-300


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: ps2 6 g h sending packets from other routers
Date: Tue, 4 Feb 2003 21:00:41 +0000 (UTC)
Organization: Stanford University
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
X-Trace: news.Stanford.EDU 1044392441 23555 171.64.15.69 (4 Feb 2003 21:00:41 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4314


This question asks how packets get from a router to which I cannot get access
to eecs.berkeley.  traceroute -s doesn't seem to help.  Any suggestions?
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: ps2 6 g h sending packets from other routers
Date: Tue, 4 Feb 2003 14:10:34 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044396704 25909 128.12.186.92 (4 Feb 2003 22:11:44 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4315

Look carefully at the traceroute man pages :)

--Russ

"David Seetapun"  wrote in message

>
> This question asks how packets get from a router to which I cannot get
access
> to eecs.berkeley.  traceroute -s doesn't seem to help.  Any suggestions?


.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 1a testing
Date: Tue, 4 Feb 2003 22:53:33 +0000 (UTC)
Lines: 86
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044399213 27276 171.64.15.66 (4 Feb 2003 22:53:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4316


>So, what is the story on test 1B and 1C?  Despite the error message 
>about the file not being accessable (presumably the testdata file?), 
>Should I conclude that my transport layer has not followed the spec 
>carefully enough to be used against the reference transmitter/receiver; 
>that is, keep digging???

Yes.  The client requests "TESTDATA.0," not "ESTDATA.0"


>Thanks...Keith



>======================================================================
>Summary prepared for primdahl
>======================================================================

>Test 1.B [out of 10]
>Checks student Tx (server) against reference Rx (client).

>Results:  NOT OK

>File size differs for /usr/class/cs244a/grading_script/hw2/TESTDATA.0!
>(You downloaded 0 byte(s), expected 110230).
>Client output:
>server: ESTDATA.0,110230,Ok

>----------------------------------------------------------------------

>Test 1.C [out of 10]
>Checks reference transmitter against student receiver.

>Results:  NOT OK

>Unexpected exit status -1.  Program output:
>***Timeout expired during grading
>Program output:

>####Initiating a new connection now to 171.64.15.98:43003#### 
>(sockfd=4)
>server: ESTDATA.0,-1,File does not exist or access denied

>----------------------------------------------------------------------

>Test 1.D [out of 2.5]
>Checks that Tx doesn't overflow receiver window.

>Results:  OK
>----------------------------------------------------------------------

>Test 1.E [out of 2.5]
>Checks that initial sequence number is set properly.

>Results:  OK
>----------------------------------------------------------------------

>Test 1.F [out of 2.5]
>Checks transport layer enforces correct receiver window.

>Results:  OK
>----------------------------------------------------------------------

>Test 1.G [out of 5]
>Checks that SYN is correctly ACKed.

>Results:  OK
>----------------------------------------------------------------------

>Test 1.H [out of 5]
>Checks that all packets are sent and ACKed before FIN.

>Results:  OK
>----------------------------------------------------------------------

>Test 1.I [out of 5]
>Checks that FIN is correctly ACKed.

>Results:  OK
>----------------------------------------------------------------------

>Test 1.J [out of 14]
>Checks student transmitter against student receiver.

>Results:  OK
>----------------------------------------------------------------------
.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test 2.J, how can i isolate it?
Date: Tue, 4 Feb 2003 22:59:06 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044399546 27465 171.64.15.66 (4 Feb 2003 22:59:06 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4317


>Refer to the posting about "strange test results" At least two other people,
>myself included, experienced this problem. I wonder if there is anyone who
>is passing this test case?

Some people have.  Please send me your code, and I'll try to see what's
going on.

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Test 2.D and other weird results
Date: Tue, 4 Feb 2003 16:17:01 -0800
Lines: 47
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044404222 363 171.64.15.110 (5 Feb 2003 00:17:02 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4318

Hi
1.) I'm failing test 2.D because the last packet the reference server
sends is
 FIN, seq 1, ack -1, len 20, content "E"

I thought that a FIN packet cannot have any associated data
and also that it should have a correct sequence number, at least
up to the one I have acknowledged.
Am I missing something here?

2.) Also, in some runs and without changing my code at all the test
script would fail with the following:

-------------------------------------------------------------
Test 2.H, using current source tree and build
make -f /usr/class/cs244a/grading_script/hw2/Makefile server.log
client.log
make: `server.log' is up to date.
make: `client.log' is up to date.

Testing input file TESTDATA.0

.... some more stuff here

####Accepting a new connection now at port# 56795#### (sockfd=3)
Testing input file TESTDATA.2

Starting student server:
/afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/./server.log
-U -p
/afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_port
2>&1 >
/afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_output
&
Server started
server not running!
couldn't submit code for testing
elaine35:~/class/cs244a/hw2>
####Accepting a new connection now at port# 56797#### (sockfd=3)
--------------------------------------------------------------
It seems like a timeout issue in the test script because the server
started, although it seems like too late for the script.


Thanks
Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: "Keith Simmons" 
Newsgroups: su.class.cs244a
Subject: Broken pipe error
Date: Tue, 4 Feb 2003 17:50:58 -0800
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: ksimmons.stanford.edu
X-Trace: news.Stanford.EDU 1044409862 4543 128.12.105.123 (5 Feb 2003 01:51:02 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4319

Shortly after a SIGALRM signal is sent to my child process, it dies with the
following error:

process_line: Broken pipe

This seems to be printed by one of the system calls I am making.  I tried to
catch a SIGPIPE signal to see if a read or write was failing, but this
didn't seem to work.  Any idea what function could cause this to be
generated?


.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Broken pipe error
Date: Wed, 5 Feb 2003 02:42:26 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine17.stanford.edu
X-Trace: news.Stanford.EDU 1044412946 6318 171.64.15.82 (5 Feb 2003 02:42:26 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4320

Has one end of a socket pair closed unexpectedly?

SteveJ

In article 
Keith Simmons  wrote:
>Shortly after a SIGALRM signal is sent to my child process, it dies with the
>following error:
>
>process_line: Broken pipe
>
>This seems to be printed by one of the system calls I am making.  I tried to
>catch a SIGPIPE signal to see if a read or write was failing, but this
>didn't seem to work.  Any idea what function could cause this to be
>generated?
>
>


.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!kushcu
From: Ozgun Ali Erdogan 
Newsgroups: su.class.cs244a
Subject: test 2B strange problem
Date: Tue, 4 Feb 2003 20:51:36 -0800
Lines: 32
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044420698 10681 171.64.15.87 (5 Feb 2003 04:51:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4321


when I run the test script, I get the following error message from test
2B:

Test 2.B
Checks student Tx (server) against reference Rx (client).

Results: NOT OK

No 'rcvd' created! Client output:
recv: Illegal seek
myconnect: mismatch in peer names ("0.0.0.0:39896" != "0.0.0.0:0")
myconnect: Bad file number


I checked my .server_output file, it first receives a SYN packet with
seq=231, and sends a SYN-ACK packet. Then it starts transmitting the DATA
to the client. But I guess at this stage the client is already not
responding, so it sends the packets 6 times, and exits.

I'm thinking maybe there could be a problem with the way I handle the peer
name, but if it were so, I wouldn't be able to pass the tests in hw2a,
right?

My Rx and Tx run fine other than that.

What could be the problem?

Thanks.

Ozgun.

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: resending after unaligned acks
Date: Tue, 04 Feb 2003 22:13:57 -0800
Lines: 27
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044425628 13035 171.64.74.37 (5 Feb 2003 06:13:48 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4322

Alex,

this is not the preferred method, however as the probability of 
receiving fractional ack's is relatively small it's not too bad.

What I don't understand though is why. You definitely should not keep 
full packets in memory but only a window witht the data. I can't quite 
see how a reasonably elegant implementation would not re-assemble the 
packet header every time.

   Guido

Alexander Fontana wrote:
> Suppose the following happens....
> 
> 1) We send a packet with bytes i to k
> 2) We receive an ack up to byte j, where i < j < k.
> 3) The data in bytes j to k times out and needs to be resent.
> 
> In the interest of not having to construct a new packet and new header,
> may we just resend all of the data starting at byte i?
> 
> Or is that too lazy?
> 
> Thanks,
> Alex

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: blocking on read
Date: Tue, 04 Feb 2003 22:15:26 -0800
Lines: 39
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044425717 13035 171.64.74.37 (5 Feb 2003 06:15:17 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4323

Eric is probably right. I have seen this at least twice when helping to 
debut probs in sweet hall.

   Guido

Eric Ogren wrote:
> This will happen if your transport layer segfaults - I'd take a look at it
> in gdb or purify and make sure that's not happening.
> 
> Eric
> (not a ta)
> 
> "Mark Kalman"  wrote in message
> 
> 
>>Hi All and especially TAs,
>>
>>Two questions:
>>
>>1) Under what circumstances will a myread call (and the underlying read
>>call) return 0 ?
>>
>>2) How can I tell if my local_data_sd is closed.
>>
>>I am having trouble because myread doesn't always block when there is no
>>data available, it sometimes returns 0. I think that it must be because
>>the socket is somehow getting closed on the child side of the connection,
>>but it occurs when I haven't done anything to close the socket. Is there a
>>reason why a myread will return 0 when the socket is actually open?
>>
>>
>>Mark
>>
>>
>>
> 
> 
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: window size
Date: Tue, 04 Feb 2003 22:20:56 -0800
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044426048 13358 171.64.74.37 (5 Feb 2003 06:20:48 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4324

If the sender sends 1,2,3 it has bytes 0 to 299 outstanding (but not 
ack'd). Let's assume packet 1 gets lost. The sender then times out, 
goes-back-n and re-sends 1,2,3. It still has 0 to 299 outstanding.
The "sender's window size", which I assume you mean is the amount of 
data the sender could send out immediately if the application wanted to, 
is still 3072-300.

   Guido

Chandrakala Kappanna wrote:
> If I had sent packets 1, 2, 3 each of letz say 100 bytes.
> My sending wind size will be 3072 -300 bytes.
> 
> Suppose letz say packet 1 times out and I have
> to resend 1,2 and 3.
> 
> what will be my sender's window size?
> 3072-500  (assuming packet 1 got dropped)
> or still 3072-300
> 
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.D and other weird results
Date: Tue, 04 Feb 2003 22:30:36 -0800
Lines: 54
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044426628 13595 171.64.74.37 (5 Feb 2003 06:30:28 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4325

Rafael,

> 1.) I'm failing test 2.D because the last packet the reference server
> sends is
 > FIN, seq 1, ack -1, len 20, content "E"
 >
> I thought that a FIN packet cannot have any associated data
> and also that it should have a correct sequence number, at least
> up to the one I have acknowledged.

There is something wrong here, the reference server sends FIN with 0 for 
seq, ack and length. Are you sure this from the sending log of the 
reference server?

> 2.) Also, in some runs and without changing my code at all the test
> script would fail with the following:
> 
> -------------------------------------------------------------
> Test 2.H, using current source tree and build
> make -f /usr/class/cs244a/grading_script/hw2/Makefile server.log
> client.log
> make: `server.log' is up to date.
> make: `client.log' is up to date.
> 
> Testing input file TESTDATA.0
> 
> ... some more stuff here
> 
> ####Accepting a new connection now at port# 56795#### (sockfd=3)
> Testing input file TESTDATA.2
> 
> Starting student server:
> /afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/./server.log
> -U -p
> /afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_port
> 2>&1 >
> /afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_output
> &
> Server started
> server not running!
> couldn't submit code for testing
> elaine35:~/class/cs244a/hw2>
> ####Accepting a new connection now at port# 56797#### (sockfd=3)
> --------------------------------------------------------------
> It seems like a timeout issue in the test script because the server
> started, although it seems like too late for the script.

This looks like you have a bug that only gets triggered sometimes. Try 
replicating the error outside the test script and debugging it there. 
You can also try logging output to a tmp file to find out where things 
go wrong during the test script run.

   Guido

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: test 2B strange problem
Date: Tue, 04 Feb 2003 22:34:19 -0800
Lines: 42
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044426850 13723 171.64.74.37 (5 Feb 2003 06:34:10 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4326

Ozgun,

very hard to guess what is happening with this little information. Do 
you by any change try to peek on a socket? Or alternatively could your 
sequence number when you send be completely off? I don't think we can do 
anything over the newsgroup, try pinging one of us during office hours 
in front of a computer.

   Guido

> when I run the test script, I get the following error message from test
> 2B:
> 
> Test 2.B
> Checks student Tx (server) against reference Rx (client).
> 
> Results: NOT OK
> 
> No 'rcvd' created! Client output:
> recv: Illegal seek
> myconnect: mismatch in peer names ("0.0.0.0:39896" != "0.0.0.0:0")
> myconnect: Bad file number
> 
> 
> I checked my .server_output file, it first receives a SYN packet with
> seq=231, and sends a SYN-ACK packet. Then it starts transmitting the DATA
> to the client. But I guess at this stage the client is already not
> responding, so it sends the packets 6 times, and exits.
> 
> I'm thinking maybe there could be a problem with the way I handle the peer
> name, but if it were so, I wouldn't be able to pass the tests in hw2a,
> right?
> 
> My Rx and Tx run fine other than that.
> 
> What could be the problem?
> 
> Thanks.
> 
> Ozgun.
> 

.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.D and other weird results
Date: Wed, 5 Feb 2003 09:46:07 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine39.stanford.edu
X-Trace: news.Stanford.EDU 1044438367 19898 171.64.15.114 (5 Feb 2003 09:46:07 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4327


>I thought that a FIN packet cannot have any associated data
>and also that it should have a correct sequence number, at least
>up to the one I have acknowledged.

The reference server isn't used in this test case.  You can just ignore
this; most of this line is unused (it's just in there so an sscanf() somewhere
doesn't get confused).


>It seems like a timeout issue in the test script because the server
>started, although it seems like too late for the script.

The script waits 2.5 seconds for the server to write its port number to a log,
so the client can use this to connect, but perhaps this is not long enough if
the system is heavily loaded.  You can rerun the test without penalty, and
I suppose it should work.

.

Path: shelby.stanford.edu!saga17.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: inconsistent output
Date: Wed, 5 Feb 2003 17:34:20 +0000 (UTC)
Lines: 34
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga17.stanford.edu
X-Trace: news.Stanford.EDU 1044466460 1722 171.64.15.147 (5 Feb 2003 17:34:20 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4328


Test 2.B and 2.C show inconsistent results for me.
When I re-run the script without any changes to the code
sometimes they pass and sometimes I get the results below.

what does **Timeout expired during grading mean?

thanks.


Test 2.B [out of 10]
Checks student Tx (server) against reference Rx (client).

Results:  NOT OK

File size differs for /usr/class/cs244a/grading_script/hw2/TESTDATA.1!
(You downloaded 8192 byte(s), expected 299328).
Client output:
server: TESTDATA.1,299328,Ok

----------------------------------------------------------------------

Test 2.C [out of 10]
Checks reference transmitter against student receiver.

Results:  NOT OK

Unexpected exit status -1.  Program output:
***Timeout expired during grading
Program output:

####Initiating a new connection now to 171.64.15.104:58960#### (sockfd=4)


.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: ps2-6d,6e : what speed to use?
Date: Wed, 5 Feb 2003 11:13:25 -0800
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044472407 2754 171.64.15.100 (5 Feb 2003 19:13:27 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4329

what speed should we use for estimating the distance?
thanks,

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: inconsistent output
Date: Wed, 5 Feb 2003 21:32:11 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1044480731 9750 171.64.15.99 (5 Feb 2003 21:32:11 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4330


>When I re-run the script without any changes to the code
>sometimes they pass and sometimes I get the results below.

You most likely have a race condition or other intermittent bug in your code.

>what does **Timeout expired during grading mean?

Exactly as it sounds, the client did not finish in the default timeout
(which is probably 30 seconds).

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: ps2-6d,6e : what speed to use?
Date: Wed, 5 Feb 2003 21:33:00 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1044480780 9909 171.64.15.99 (5 Feb 2003 21:33:00 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4331


>what speed should we use for estimating the distance?

Some reasonable value for the speed of light (e.g. see Peterson and Davie).

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!kushcu
From: Ozgun Ali Erdogan 
Newsgroups: su.class.cs244a
Subject: Re: test 2B FINs
Date: Wed, 5 Feb 2003 17:32:45 -0800
Lines: 67
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine34.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044495201 5973 171.64.15.109 (6 Feb 2003 01:33:21 GMT)
X-Complaints-To: 
To: Guido Appenzeller 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4332


Hi,

I traced the problem down to this:

The client sends the FIN packet, and expects a FIN-ACK packet. The server
receives the FIN packet, closes its end of the connection and sends the
FIN-ACK. the FIN-ACK packet is dropped though. and the connection times
out.

By that time, the server closes and opens a new connection. But the client
resends the FIN packet six more times. So, the server gets 6 unrelated
packets in STCP_WAITING_SYN, and the test script assumes that no files
have been created for the transfer. (or I think this is what's going on.)

What am I supposed to do in this case?

Thanks,

Ozgun.

On Tue, 4 Feb 2003, Guido Appenzeller wrote:

> Ozgun,
>
> very hard to guess what is happening with this little information. Do
> you by any change try to peek on a socket? Or alternatively could your
> sequence number when you send be completely off? I don't think we can do
> anything over the newsgroup, try pinging one of us during office hours
> in front of a computer.
>
>    Guido
>
> > when I run the test script, I get the following error message from test
> > 2B:
> >
> > Test 2.B
> > Checks student Tx (server) against reference Rx (client).
> >
> > Results: NOT OK
> >
> > No 'rcvd' created! Client output:
> > recv: Illegal seek
> > myconnect: mismatch in peer names ("0.0.0.0:39896" != "0.0.0.0:0")
> > myconnect: Bad file number
> >
> >
> > I checked my .server_output file, it first receives a SYN packet with
> > seq=231, and sends a SYN-ACK packet. Then it starts transmitting the DATA
> > to the client. But I guess at this stage the client is already not
> > responding, so it sends the packets 6 times, and exits.
> >
> > I'm thinking maybe there could be a problem with the way I handle the peer
> > name, but if it were so, I wouldn't be able to pass the tests in hw2a,
> > right?
> >
> > My Rx and Tx run fine other than that.
> >
> > What could be the problem?
> >
> > Thanks.
> >
> > Ozgun.
> >
>
>

.

Path: shelby.stanford.edu!saga17.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: what does test 2.D, E and F test?
Date: Thu, 6 Feb 2003 02:03:16 +0000 (UTC)
Lines: 50
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga17.stanford.edu
X-Trace: news.Stanford.EDU 1044496996 6879 171.64.15.147 (6 Feb 2003 02:03:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4333

My implementation is failing for these tests.
Can anyyou please tell me what these tests actually test for?

I am unable to re-produce this scenario when I run outside the test
environment.

-----------------------------------------------------------------
Test 2.D [out of 2.5]
Checks that receiver buffers data in receiver window.

Results:  NOT OK

File size differs for /usr/class/cs244a/grading_script/hw2/net_instruct_resend_same_info.out!
(You downloaded 0 byte(s), expected 20).
Client output:

####Initiating a new connection now to 171.64.15.105:52717#### (sockfd=4)

----------------------------------------------------------------------

Test 2.E [out of 5]
Checks Rx against bad sender (overlapping packets, etc.)

Results:  NOT OK

File size differs for /usr/class/cs244a/grading_script/hw2/net_instruct_resend_seqnum.out!
(You downloaded 10 byte(s), expected 3092).
Client output:

####Initiating a new connection now to 171.64.15.105:52719#### (sockfd=4)
====>network_send:dropping the packet
Total number of bytes = 0

----------------------------------------------------------------------

Test 2.F [out of 2.5]
Checks transport layer enforces correct receiver window.

Results:  NOT OK

File size differs for /usr/class/cs244a/grading_script/hw2/net_instruct_pkts_overlapping_lower_window.out!
(You downloaded 10 byte(s), expected 536).
Client output:

####Initiating a new connection now to 171.64.15.105:52721#### (sockfd=4)
====>network_send:dropping the packet
Total number of bytes = 0

----------------------------------------------------------------------

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test 2B FINs
Date: Thu, 6 Feb 2003 02:17:14 +0000 (UTC)
Lines: 66
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1044497834 7438 171.64.15.99 (6 Feb 2003 02:17:14 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4334


>The client sends the FIN packet, and expects a FIN-ACK packet. The server
>receives the FIN packet, closes its end of the connection and sends the
>FIN-ACK. the FIN-ACK packet is dropped though. and the connection times
>out.

>By that time, the server closes and opens a new connection. But the client
>resends the FIN packet six more times. So, the server gets 6 unrelated
>packets in STCP_WAITING_SYN, and the test script assumes that no files
>have been created for the transfer. (or I think this is what's going on.)

I don't think so.  The 'rcvd' file should still have been created in this
case, even if you had to retransmit the FIN multiple times (and died
thereafter).  (This latter case should be no problem, because you'd have
already successfully downloaded all data anyway).  The output indicates that
this didn't happen; nothing called 'rcvd' even existed on the filesystem.
For this to happen, if you look at client.c, you'll see that your client
may not have even heard back correctly from the server.


>On Tue, 4 Feb 2003, Guido Appenzeller wrote:

>> Ozgun,
>>
>> very hard to guess what is happening with this little information. Do
>> you by any change try to peek on a socket? Or alternatively could your
>> sequence number when you send be completely off? I don't think we can do
>> anything over the newsgroup, try pinging one of us during office hours
>> in front of a computer.
>>
>>    Guido
>>
>> > when I run the test script, I get the following error message from test
>> > 2B:
>> >
>> > Test 2.B
>> > Checks student Tx (server) against reference Rx (client).
>> >
>> > Results: NOT OK
>> >
>> > No 'rcvd' created! Client output:
>> > recv: Illegal seek
>> > myconnect: mismatch in peer names ("0.0.0.0:39896" != "0.0.0.0:0")
>> > myconnect: Bad file number
>> >
>> >
>> > I checked my .server_output file, it first receives a SYN packet with
>> > seq=231, and sends a SYN-ACK packet. Then it starts transmitting the DATA
>> > to the client. But I guess at this stage the client is already not
>> > responding, so it sends the packets 6 times, and exits.
>> >
>> > I'm thinking maybe there could be a problem with the way I handle the peer
>> > name, but if it were so, I wouldn't be able to pass the tests in hw2a,
>> > right?
>> >
>> > My Rx and Tx run fine other than that.
>> >
>> > What could be the problem?
>> >
>> > Thanks.
>> >
>> > Ozgun.
>> >
>>
>>

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: what does test 2.D, E and F test?
Date: Thu, 6 Feb 2003 02:19:30 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1044497970 7468 171.64.15.99 (6 Feb 2003 02:19:30 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4335


>My implementation is failing for these tests.
>Can anyyou please tell me what these tests actually test for?

They check that you buffer received data, i.e. don't just discard out-of-order
data, that you correctly handle overlapping packets and packets outside
your sender window, that you only accept data that falls inside your
receiver window, etc.

.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: broken pipe error in test script
Date: Wed, 5 Feb 2003 20:55:04 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine26.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044507306 13200 171.64.15.101 (6 Feb 2003 04:55:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4336

Hi,

I got a few "process_line: broken pipe error" when running the test
script, yet the summary of my running result are all OK. I'm wondering if
this type of error is expected or there is something wrong indeed. Has
anybody seen the same kind of print out during test script?

Thanks.
Mingying

.

Path: shelby.stanford.edu!not-for-mail
From: Siddharth Joshi 
Newsgroups: su.class.cs244a
Subject: Re: broken pipe error in test script
Date: Wed, 05 Feb 2003 21:13:13 -0800
Organization: EE, Stanford University
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine34.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044508393 13895 171.64.15.109 (6 Feb 2003 05:13:13 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4337

I believe that for, checking retrasmissions upto 5 only-test, this may
be needed, because you will close the connection.
Hope so!!

Siddharth Joshi



Mingying Chen wrote:
> 
> Hi,
> 
> I got a few "process_line: broken pipe error" when running the test
> script, yet the summary of my running result are all OK. I'm wondering if
> this type of error is expected or there is something wrong indeed. Has
> anybody seen the same kind of print out during test script?
> 
> Thanks.
> Mingying
.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Test script not capturing program output
Date: Wed, 5 Feb 2003 21:28:15 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044509237 14228 128.12.195.69 (6 Feb 2003 05:27:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4338

When the test script times out, it does not return my program output, this
is making debugging harder against the reference implementations. I am using
dprintf and printf to print debugging messages and it seems like they both
are not captured by the test scripts. How can I look at the debugging
message when there is a time out problem?

-myl


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: Re: broken pipe error in test script
Date: Wed, 5 Feb 2003 21:27:39 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine26.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044509263 14244 171.64.15.101 (6 Feb 2003 05:27:43 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4339

I hope so too. But when I ran into the 5-retransmission scenarioes in my
own test, I don't see any "broken pipe error" message print out. Would
TA confirm this please?

Thanks.
Mingying


On Wed, 5 Feb 2003, Siddharth Joshi wrote:

> I believe that for, checking retrasmissions upto 5 only-test, this may
> be needed, because you will close the connection.
> Hope so!!
>
> Siddharth Joshi
>
>
>
> Mingying Chen wrote:
> >
> > Hi,
> >
> > I got a few "process_line: broken pipe error" when running the test
> > script, yet the summary of my running result are all OK. I'm wondering if
> > this type of error is expected or there is something wrong indeed. Has
> > anybody seen the same kind of print out during test script?
> >
> > Thanks.
> > Mingying
>

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: bug in part (C)
Date: Thu, 6 Feb 2003 06:22:39 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1044512559 15880 171.64.15.109 (6 Feb 2003 06:22:39 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4340


>If anyone's working on part (C) and using the provided libftpcopy.a rather
>than their own ftpcopy solution from HW1, there seem to be a couple of
>problems in the implementation of ftpcopy; some non-matching files are
>downloaded.  This causes one or two of the later test cases to fail.  (This
>doesn't impact the STCP aspect of the provided library, which is working
>correctly).

I think this problem is fixed now.
.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: broken pipe error in test script
Date: Thu, 6 Feb 2003 06:23:33 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1044512613 15947 171.64.15.109 (6 Feb 2003 06:23:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4341


>I got a few "process_line: broken pipe error" when running the test
>script, yet the summary of my running result are all OK. I'm wondering if
>this type of error is expected or there is something wrong indeed. Has
>anybody seen the same kind of print out during test script?

These are normal (as you might guess from the "OK" output).  As I recall,
some happen when the server is killed by the script.

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test script not capturing program output
Date: Thu, 6 Feb 2003 06:35:15 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1044513315 16304 171.64.15.109 (6 Feb 2003 06:35:15 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4342


>When the test script times out, it does not return my program output, this
>is making debugging harder against the reference implementations. I am using
>dprintf and printf to print debugging messages and it seems like they both
>are not captured by the test scripts. How can I look at the debugging
>message when there is a time out problem?

I'm not sure why this should be (although please note that the script builds
the code without the -DDEBUG option, so you would have to manually #define
this yourself in transport.c to enable dprintf).  When the server's running,
you see its output (just written to stderr), and the script shows the client
output (again written to stderr) for me, so fprintfs to stderr should likewise
appear.

.

Path: shelby.stanford.edu!not-for-mail
From: Steven Richard Bergsieker 
Newsgroups: su.class.cs244a
Subject: How to calculate CWND
Date: Thu, 06 Feb 2003 01:08:01 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine19.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044522481 21394 171.64.15.84 (6 Feb 2003 09:08:01 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4343

How do we calculate the congestion window?  Do we even need to worry
about this for part B, or should we just worry about RTT?

Thanks,
Steven
.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: How to calculate CWND
Date: Thu, 6 Feb 2003 02:11:47 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044526377 23364 128.12.186.92 (6 Feb 2003 10:12:57 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4344

Since you do not have to implement congestion control for this project, you
can just hard code the congestion window to the appropriate value.

The appropriate value thus being the one which effectively turns off
congestion control.  (If that doesn't make sense look at the congestion
control chapter in the textbook.)

--Russ

"Steven Richard Bergsieker"  wrote in message

> How do we calculate the congestion window?  Do we even need to worry
> about this for part B, or should we just worry about RTT?
>
> Thanks,
> Steven


.

Path: shelby.stanford.edu!elaine43.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Test 2.K
Date: Thu, 6 Feb 2003 04:19:21 -0800
Lines: 31
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine43.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044533963 26925 171.64.15.118 (6 Feb 2003 12:19:23 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4345


Hi,

I am having some problems with Test 2.K. I get the following error:

Test 2.K [out of 2.5]
Checks that Tx enforces 5 retransmissions.

Results:  NOT OK

Retransmission count of 5 not enforced
(Your code retransmitted sequence number 3086 up to 4 times)
Client output:

It seems to be that it happens at the very last seq. num that I am trying
to
retransmit the 5th time. The connection closes before that. Could you tell
me if the  way this test case is designed, the client is
sending the FIN and if so when?

Also, if we get a FIN, we are just supposed to send a FIN ACK and exit
out. Is that correct? as in if there is some packet to be retranmitted, we
don't do that before exiting?

any other reasons why you think this might be happening?

Thanks,
Priyanka



.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 18:57:46 +0000 (UTC)
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine39.stanford.edu
X-Trace: news.Stanford.EDU 1044557866 2093 171.64.15.114 (6 Feb 2003 18:57:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4346


>I am having some problems with Test 2.K. I get the following error:

>Test 2.K [out of 2.5]
>Checks that Tx enforces 5 retransmissions.

>Results:  NOT OK

>Retransmission count of 5 not enforced
>(Your code retransmitted sequence number 3086 up to 4 times)
>Client output:

>It seems to be that it happens at the very last seq. num that I am trying
>to
>retransmit the 5th time. The connection closes before that. Could you tell
>me if the  way this test case is designed, the client is
>sending the FIN and if so when?

No, the client doesn't send a FIN in this test case.

>Also, if we get a FIN, we are just supposed to send a FIN ACK and exit
>out. Is that correct? as in if there is some packet to be retranmitted, we
>don't do that before exiting?

Correct.

.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 11:37:55 -0800
Lines: 41
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044560277 3418 171.64.15.81 (6 Feb 2003 19:37:57 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4347


So, to simulate this test case, I don't send any ACK back when I am
transmitting data and I see it re transmitting all packets 5 times. Do you
think this test case could have some other timing dependency?

what else could I do to debug the problem?

Thanks,
Priyanka

 On Thu, 6
Feb 2003, Matthew Jonathan Holliman wrote:

>
> >I am having some problems with Test 2.K. I get the following error:
>
> >Test 2.K [out of 2.5]
> >Checks that Tx enforces 5 retransmissions.
>
> >Results:  NOT OK
>
> >Retransmission count of 5 not enforced
> >(Your code retransmitted sequence number 3086 up to 4 times)
> >Client output:
>
> >It seems to be that it happens at the very last seq. num that I am trying
> >to
> >retransmit the 5th time. The connection closes before that. Could you tell
> >me if the  way this test case is designed, the client is
> >sending the FIN and if so when?
>
> No, the client doesn't send a FIN in this test case.
>
> >Also, if we get a FIN, we are just supposed to send a FIN ACK and exit
> >out. Is that correct? as in if there is some packet to be retranmitted, we
> >don't do that before exiting?
>
> Correct.
>
>

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: myTCP checksum result
Date: Thu, 6 Feb 2003 11:58:18 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044561499 4026 171.64.15.69 (6 Feb 2003 19:58:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4348

hi all!

my program seems to work well with 40KB files (no checksum error) and NOT
with 300KB files (getting a different checksum from the original, EVERY
TIME). has anyone else had this problem? I'm not sure what's different
about the 40KB file transfer from the 300KB transfer?

also, in "network.c", when it says "network_send: duplicating the packet",
how does it work? suppose I call "network_send()" to send my packet 5,
"duplicating the packet" means sending TWO copies of packet 5? or packet 5
AND some other packet from "global_net_ctx->stored_mh"? or other
combination?

thanks!
Tan

.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 20:29:52 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1044563392 4990 171.64.15.105 (6 Feb 2003 20:29:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4349


>So, to simulate this test case, I don't send any ACK back when I am
>transmitting data and I see it re transmitting all packets 5 times. Do you
>think this test case could have some other timing dependency?

I doubt it; it just runs the special client against the server and checks what
the server sent after the client didn't ACK anything.  If you're trying to
simulate this yourself, be sure you're testing retransmission of a full window.
Also, be sure that each packet is sent a total of six times--the original,
plus five retransmissions.

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: Re: myTCP checksum result
Date: Thu, 6 Feb 2003 20:34:06 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine22.stanford.edu
X-Trace: news.Stanford.EDU 1044563646 5197 171.64.15.87 (6 Feb 2003 20:34:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4350

In article 
Tan Gao (weiwei)  wrote:
>hi all!
>
>my program seems to work well with 40KB files (no checksum error) and NOT
>with 300KB files (getting a different checksum from the original, EVERY
>TIME). has anyone else had this problem? I'm not sure what's different
>about the 40KB file transfer from the 300KB transfer?
>
>also, in "network.c", when it says "network_send: duplicating the packet",
>how does it work? suppose I call "network_send()" to send my packet 5,
>"duplicating the packet" means sending TWO copies of packet 5? or packet 5
>AND some other packet from "global_net_ctx->stored_mh"? or other
>combination?
>
>thanks!
>Tan
>


.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: myTCP checksum result
Date: Thu, 6 Feb 2003 20:36:36 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1044563796 5257 171.64.15.105 (6 Feb 2003 20:36:36 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4351


>my program seems to work well with 40KB files (no checksum error) and NOT
>with 300KB files (getting a different checksum from the original, EVERY
>TIME). has anyone else had this problem? I'm not sure what's different
>about the 40KB file transfer from the 300KB transfer?

The longer the file, the greater the chance for packet loss (and thus for
faulty buffering/retransmission strategies to break).

>also, in "network.c", when it says "network_send: duplicating the packet",
>how does it work? suppose I call "network_send()" to send my packet 5,
>"duplicating the packet" means sending TWO copies of packet 5? or packet 5
>AND some other packet from "global_net_ctx->stored_mh"? or other
>combination?

All the code implementing the unreliable delivery is contained in network.c,
so you can probably better understand how this is done by looking at this
yourself.  But the short answer is yes, packet five is sent twice.
.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: correct receiver behavior?
Date: Thu, 6 Feb 2003 13:05:31 -0800
Lines: 40
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044565532 6147 171.64.15.69 (6 Feb 2003 21:05:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4352

there seems to be some logical bugs with my client/receiver. so i'm
writing to clarify what exactly are the correct/expected behaviors of the
receiver/client:

1. I was trying to follow the receiver buffer set-up on Peterson & Davie
(page 384-385, figure 5.8). it is still unclear to me how many gaps are
allowed in the receiver window? (right now, I only allow a max. of 1 gap
existing in the receiving window)

suppose my receiver window begins at 1000 and ends at 4071 (3072 bytes
total), when a packet of sequence numbers (1500-2035) arrives, I buffer it
(leaving a gap of sequence numbers (1000-1499) in the receiving window).

some possible scenarios:

a.)if a packet of seq num (2500-3035) arrives, should I buffer it?
(which will create TWO gaps in the sliding window, this case is not
explicitly explained in the textbook). currently, I discard this packet
and sends an ACK for 1000 back.

b.) if a packet of seq num (4000-4535) arrives, since i only allow 1 gap,
i discard this packet. is this the correct decision? if not, what's the
expected behavior?

c.) if a packet of seq num (800-1335) arrives, i only copy data of seq
(1000-1335) into the receiving buffer, pass this portion of the data to
application and advance receiver window to begin at 1336 (receiver window
still ends at 4071). correct?

2. if i receive a packet that is IN ORDER and the receiving buffer is
empty, I send the payload of this packet to application immediately AND
advance the receiving window. is this correct? or should I buffer and
send this data later (and advance receiver window later)? any suggestion?

thanks!
Tan




.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Thu, 6 Feb 2003 21:21:54 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1044566514 6923 171.64.15.105 (6 Feb 2003 21:21:54 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4353


>If we must take care of packets with overlapping data, shall we honor the
>data from earlier packets or the latest packets?

You should use the earliest received data.

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Thu, 6 Feb 2003 13:39:28 -0800
Lines: 15
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044567568 7386 128.12.85.0 (6 Feb 2003 21:39:28 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4354

Does it matter? As Steve said, it should be the same, no? Of course, there
could be transmission errors, but that is likely to happen for either the
original or the retransmit. If our design depends on using the most recent
data, will we be penalized?

"Matthew Jonathan Holliman"  wrote in message

>
> >If we must take care of packets with overlapping data, shall we honor the
> >data from earlier packets or the latest packets?
>
> You should use the earliest received data.
>


.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Thu, 6 Feb 2003 13:42:51 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044567772 7506 171.64.15.110 (6 Feb 2003 21:42:52 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4355


is it wrong if we use the latest data. Thats what I am doing.

i.e if I am expecting seq num: 400 and I get seq num 500 with 200 bytes of
data and then seq num 600 with 200 bytes of data.

The 100 bytes of data that came with seq num 500 would be overwritten by
the first 100 bytes of data with seq 600.

Is there something wrong in that?

On Thu, 6 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >If we must take care of packets with overlapping data, shall we honor the
> >data from earlier packets or the latest packets?
>
> You should use the earliest received data.
>
>

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 13:49:52 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
   
 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044568194 7720 171.64.15.110 (6 Feb 2003 21:49:54 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4356


I am retransmitting the entire window and it does retransmit it 5 times
plus one original.

what else could I try?

On Thu, 6 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >So, to simulate this test case, I don't send any ACK back when I am
> >transmitting data and I see it re transmitting all packets 5 times. Do you
> >think this test case could have some other timing dependency?
>
> I doubt it; it just runs the special client against the server and checks what
> the server sent after the client didn't ACK anything.  If you're trying to
> simulate this yourself, be sure you're testing retransmission of a full window.
> Also, be sure that each packet is sent a total of six times--the original,
> plus five retransmissions.
>
>

.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Thu, 6 Feb 2003 21:51:29 +0000 (UTC)
Lines: 24
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1044568289 7795 171.64.15.105 (6 Feb 2003 21:51:29 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4357


>Does it matter? As Steve said, it should be the same, no? Of course, there
>could be transmission errors, but that is likely to happen for either the
>original or the retransmit. If our design depends on using the most recent
>data, will we be penalized?

In the normal case, you're correct, it wouldn't matter.  However, a couple
of the test cases (2.D, 2.E) do explicitly resend different data the
second time.

There's a time window between the first data and resent data, so it's
possible that you'd pass the test with either choice, but to be sure of
that it would be better to use the first data.

>"Matthew Jonathan Holliman"  wrote in message

>>
>> >If we must take care of packets with overlapping data, shall we honor the
>> >data from earlier packets or the latest packets?
>>
>> You should use the earliest received data.
>>


.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: correct receiver behavior?
Date: Thu, 6 Feb 2003 21:53:47 +0000 (UTC)
Lines: 43
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1044568427 7889 171.64.15.105 (6 Feb 2003 21:53:47 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4358


>1. I was trying to follow the receiver buffer set-up on Peterson & Davie
>(page 384-385, figure 5.8). it is still unclear to me how many gaps are
>allowed in the receiver window? (right now, I only allow a max. of 1 gap
>existing in the receiving window)

There's no constraint; if data arrives in your receiver window, you
should either pass it up to the application (if you can), or buffer
it (if you can't).

>suppose my receiver window begins at 1000 and ends at 4071 (3072 bytes
>total), when a packet of sequence numbers (1500-2035) arrives, I buffer it
>(leaving a gap of sequence numbers (1000-1499) in the receiving window).

>some possible scenarios:

>a.)if a packet of seq num (2500-3035) arrives, should I buffer it?
>(which will create TWO gaps in the sliding window, this case is not
>explicitly explained in the textbook). currently, I discard this packet
>and sends an ACK for 1000 back.

You should buffer it.

>b.) if a packet of seq num (4000-4535) arrives, since i only allow 1 gap,
>i discard this packet. is this the correct decision? if not, what's the
>expected behavior?

No, you again buffer whatever part of it you can.

>c.) if a packet of seq num (800-1335) arrives, i only copy data of seq
>(1000-1335) into the receiving buffer, pass this portion of the data to
>application and advance receiver window to begin at 1336 (receiver window
>still ends at 4071). correct?

Correct.

>2. if i receive a packet that is IN ORDER and the receiving buffer is
>empty, I send the payload of this packet to application immediately AND
>advance the receiving window. is this correct? or should I buffer and
>send this data later (and advance receiver window later)? any suggestion?

The former is fine.

.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 21:54:46 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References:        
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1044568486 7911 171.64.15.105 (6 Feb 2003 21:54:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4359


>I am retransmitting the entire window and it does retransmit it 5 times
>plus one original.

Did you try using client.retrans in your grading_src/build directory?

.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Thu, 6 Feb 2003 22:04:25 +0000 (UTC)
Lines: 19
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1044569065 8218 171.64.15.81 (6 Feb 2003 22:04:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4360


>In the normal case, you're correct, it wouldn't matter.  However, a couple
>of the test cases (2.D, 2.E) do explicitly resend different data the
>second time.

>There's a time window between the first data and resent data, so it's
>possible that you'd pass the test with either choice, but to be sure of
>that it would be better to use the first data.

Incidentally, I might mention that if you pass contiguous data straight up
to the application without buffering it (i.e. stuff that arrives in order or
fills in a hole at the beginning of your receiver window), you won't experience
any problems either, and so wouldn't need to rush to change your design.
(This should probably be everybody).

The test cases do not test the ambiguous situation where you've had to buffer
a packet that is subsequently overwritten before you can legitimately pass
the data up to the application.

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.D and other weird results
Date: Thu, 6 Feb 2003 14:26:50 -0800
Lines: 91
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044570412 8979 171.64.15.110 (6 Feb 2003 22:26:52 GMT)
X-Complaints-To: 
To: Guido Appenzeller 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4361

Guido,



On Tue, 4 Feb 2003, Guido Appenzeller wrote:

> Rafael,
>
> > 1.) I'm failing test 2.D because the last packet the reference server
> > sends is
>  > FIN, seq 1, ack -1, len 20, content "E"
>  >
> > I thought that a FIN packet cannot have any associated data
> > and also that it should have a correct sequence number, at least
> > up to the one I have acknowledged.
>
> There is something wrong here, the reference server sends FIN with 0 for
> seq, ack and length. Are you sure this from the sending log of the
> reference server?
>


As far as I can tell the test script will run:

/usr/class/cs244a/grading_script/hw2/testserver -f
/usr/class/cs244a/grading_script/hw2/net_instruct_resend_same_info.txt -p
/afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_port
2>&1 >
/afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_output
&


I don't know what the testserver is supposed to do but looking at the file
/usr/class/cs244a/grading_script/hw2/net_instruct_resend_same_info.txt
it seems to me that it uses the instructions in that file in order to
send packets.
This file has the following content:
@time 1, SYA, seq 2, ack 2, len 0, content "A"
@time 90, PKT, seq 3, ack -1, len 10, content "B"
@time 190, PKT, seq 3, ack -1, len 10, content "C"
@time 300, PKT, seq 3, ack -1, len 20, content "D"
@time 400, PKT, seq 1, ack -1, len 20, content "E"
@time 500, FIN, seq 1, ack -1, len 20, content "E"


and sure enough my client receives a FIN packet with data_len = 20
which I will treat as a bad formed packet
This is what my client gets:
------------------------------------------------------------
<=== stcp_established_net : default
<===== stcp_established_net accept packet
th_seq = [3] th_ack = [-1] th_flags = [0] data_len = [10]
[BBBBBBBBBB]

<=== stcp_established_net : default
<===== stcp_established_net accept packet
th_seq = [3] th_ack = [-1] th_flags = [0] data_len = [10]
[CCCCCCCCCC]

<===== stcp_established_net accept packet
th_seq = [3] th_ack = [-1] th_flags = [0] data_len = [20]
[DDDDDDDDDDDDDDDDDDDD]

<=== stcp_established_net : default
<==== stcp_established_net DUPLICATED packet
th_seq = [1] th_ack = [-1] th_flags = [0] data_len = [20]
[EEEEEEEEEEEEEEEEEEEE]

<=== stcp_established_net : default
<=== stcp_established_net: BAD FORMED PACKET Drop it
th_seq = [1] th_ack = [-1] th_flags = [1] data_len = [20]
[EEEEEEEEEEEEEEEEEEEE]
--------------------------------------------------------

I only accept well formed fin packets, i.e. they are the size
of STCPHeader and have TH_FIN in the flags, if they are longer than that
then I consider that they can't be a FIN packet.
In order to consistently pass this test I have to relax the condition
and not check the packet size, only the flags.
Could any TA clarify if we should check for well formed control
packets: SYN, ACK, FIN and the like? and look into this test?
Do we have to be sloopy in order to pass this test?

Is anybody else having this problem?

Thanks
Rafa




.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Thu, 6 Feb 2003 14:37:45 -0800
Lines: 26
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044571067 9315 171.64.15.110 (6 Feb 2003 22:37:47 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4362


Why should we care about this?
If the packets have overlapping data it should be the same data,
so it doesn't matter which data we keep.

If the overlapping data are different then there is no good reason
to select one over the other. Selecting the earliest received
data seems like a very arbitrary decision that doesn't buy us anything.
On the contrary, it will complicate our receiving policy because
we have to check all our standing received packets. By selecting
the data received later we obviate that check. What is the rationale
for selecting the earliest received data?

Thanks
Rafa

On Thu, 6 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >If we must take care of packets with overlapping data, shall we honor the
> >data from earlier packets or the latest packets?
>
> You should use the earliest received data.
>
>

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 14:46:57 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
    
   
 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044571619 9575 171.64.15.110 (6 Feb 2003 22:46:59 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4363


I tried using that also, and it seems to work fine.

If you could please take a look at it. I've placed the output at:
/afs/ir.stanford.edu/users/p/r/priyanka/public/out1.txt

I ran my server in reliable mode and then ran client.retrans on the other
side.

On Thu, 6 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >I am retransmitting the entire window and it does retransmit it 5 times
> >plus one original.
>
> Did you try using client.retrans in your grading_src/build directory?
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "James Fan" 
Newsgroups: su.class.cs244a
Subject: Re: correct receiver behavior?
Date: Thu, 6 Feb 2003 14:50:37 -0800
Lines: 20
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: jamfan.stanford.edu
X-Trace: news.Stanford.EDU 1044571838 9729 128.12.105.103 (6 Feb 2003 22:50:38 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4364

> >suppose my receiver window begins at 1000 and ends at 4071 (3072 bytes
> >total), when a packet of sequence numbers (1500-2035) arrives, I buffer
it
> >(leaving a gap of sequence numbers (1000-1499) in the receiving window).
>

[snip]

> >c.) if a packet of seq num (800-1335) arrives, i only copy data of seq
> >(1000-1335) into the receiving buffer, pass this portion of the data to
> >application and advance receiver window to begin at 1336 (receiver window
> >still ends at 4071). correct?
>
> Correct.

It is my impression that after processing the packet and bumping the start
of the receiver window to 1336, the receiver window would now end at
(1336+3072-1) = 4407, not 4071. Is this not the case?


.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: test quota
Date: Thu, 6 Feb 2003 15:19:30 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044573572 10700 171.64.15.69 (6 Feb 2003 23:19:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4365


are 2b and 2c under the same test quota? I was trying 2c and it seems I
finished up my test quota for 2b....
should'nt they be separate quota? or this is how its supposed to be?

Thanks,
priyanka


.

Path: shelby.stanford.edu!myth10.Stanford.EDU!daswani
From: Neil Kumar Daswani 
Newsgroups: su.class.cs244a
Subject: Test 2.D
Date: Thu, 6 Feb 2003 16:20:41 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: myth10.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044577246 13264 171.64.15.24 (7 Feb 2003 00:20:46 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4366


Dear TAs,

Exactly what is Test 2.D doing to check that "the receiver buffers data in
receiver window?"

My implementation handles out-of-order packets, and reliably transfers
very large files in unreliable mode.  It handles out-of-order packets by
(obviously) buffering data in a receiver window.  My implementation passes
(almost) all other tests but it is not passing Test 2.D.

What are the specific sequences of operations that Test 2.D carries out to
do its check?

-- Neil


.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: Test 2.C fail randomly
Date: Thu, 6 Feb 2003 16:27:14 -0800
Lines: 38
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044577636 13470 171.64.15.76 (7 Feb 2003 00:27:16 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4367

Hi,

I passed Test 2.C last night, but failed today without changing any code.
The problem is my client timeout during grading. Then I rerun it
immediately without doing anything, this time I pass again. I am wondering
what could be the problem causing timeout in Test 2.C and why this problem
comes up randomly? The following is the print out during the failed test.

Thanks.
Mingying

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

Test 2.C [out of 10]

Checks reference transmitter against student receiver.



Results:  NOT OK



Unexpected exit status -1.  Program output:

***Timeout expired during grading

Program output:



####Initiating a new connection now to 171.64.15.115:44259#### (sockfd=4)

server: TESTDATA.0,110230,Ok




.

Path: shelby.stanford.edu!saga22.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.D and other weird results
Date: Thu, 6 Feb 2003 16:45:24 -0800
Lines: 105
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: saga22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044578725 14098 171.64.15.152 (7 Feb 2003 00:45:25 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4368


Is it only ACK packets that can't have data? I was under the assumption
that all control packets, ie ACK, SYN, SYN/ACK, FIN, FIN/ACK would not
contain data? Hmmm, I not passing the test either, and probably for the
same
reason.

Rhea


On Thu, 6 Feb 2003, Rafael M Hernandez wrote:

> Guido,
>
>
>
> On Tue, 4 Feb 2003, Guido Appenzeller wrote:
>
> > Rafael,
> >
> > > 1.) I'm failing test 2.D because the last packet the reference server
> > > sends is
> >  > FIN, seq 1, ack -1, len 20, content "E"
> >  >
> > > I thought that a FIN packet cannot have any associated data
> > > and also that it should have a correct sequence number, at least
> > > up to the one I have acknowledged.
> >
> > There is something wrong here, the reference server sends FIN with 0 for
> > seq, ack and length. Are you sure this from the sending log of the
> > reference server?
> >
>
>
> As far as I can tell the test script will run:
>
> /usr/class/cs244a/grading_script/hw2/testserver -f
> /usr/class/cs244a/grading_script/hw2/net_instruct_resend_same_info.txt -p
> /afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_port
> 2>&1 >
> /afs/ir.stanford.edu/users/r/h/rhm/class/cs244a/hw2/grading_src/build/.server_output
> &
>
>
> I don't know what the testserver is supposed to do but looking at the file
> /usr/class/cs244a/grading_script/hw2/net_instruct_resend_same_info.txt
> it seems to me that it uses the instructions in that file in order to
> send packets.
> This file has the following content:
> @time 1, SYA, seq 2, ack 2, len 0, content "A"
> @time 90, PKT, seq 3, ack -1, len 10, content "B"
> @time 190, PKT, seq 3, ack -1, len 10, content "C"
> @time 300, PKT, seq 3, ack -1, len 20, content "D"
> @time 400, PKT, seq 1, ack -1, len 20, content "E"
> @time 500, FIN, seq 1, ack -1, len 20, content "E"
>
>
> and sure enough my client receives a FIN packet with data_len = 20
> which I will treat as a bad formed packet
> This is what my client gets:
> ------------------------------------------------------------
> <=== stcp_established_net : default
> <===== stcp_established_net accept packet
> th_seq = [3] th_ack = [-1] th_flags = [0] data_len = [10]
> [BBBBBBBBBB]
>
> <=== stcp_established_net : default
> <===== stcp_established_net accept packet
> th_seq = [3] th_ack = [-1] th_flags = [0] data_len = [10]
> [CCCCCCCCCC]
>
> <===== stcp_established_net accept packet
> th_seq = [3] th_ack = [-1] th_flags = [0] data_len = [20]
> [DDDDDDDDDDDDDDDDDDDD]
>
> <=== stcp_established_net : default
> <==== stcp_established_net DUPLICATED packet
> th_seq = [1] th_ack = [-1] th_flags = [0] data_len = [20]
> [EEEEEEEEEEEEEEEEEEEE]
>
> <=== stcp_established_net : default
> <=== stcp_established_net: BAD FORMED PACKET Drop it
> th_seq = [1] th_ack = [-1] th_flags = [1] data_len = [20]
> [EEEEEEEEEEEEEEEEEEEE]
> --------------------------------------------------------
>
> I only accept well formed fin packets, i.e. they are the size
> of STCPHeader and have TH_FIN in the flags, if they are longer than that
> then I consider that they can't be a FIN packet.
> In order to consistently pass this test I have to relax the condition
> and not check the packet size, only the flags.
> Could any TA clarify if we should check for well formed control
> packets: SYN, ACK, FIN and the like? and look into this test?
> Do we have to be sloopy in order to pass this test?
>
> Is anybody else having this problem?
>
> Thanks
> Rafa
>
>
>
>
>

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.D and other weird results
Date: Fri, 7 Feb 2003 00:53:18 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1044579198 14326 171.64.15.107 (7 Feb 2003 00:53:18 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4369


>and sure enough my client receives a FIN packet with data_len = 20
>which I will treat as a bad formed packet

I apologise for this (it was a typo); I've fixed this case.

>Could any TA clarify if we should check for well formed control
>packets: SYN, ACK, FIN and the like? and look into this test?
>Do we have to be sloopy in order to pass this test?

No, you can still use your regular check.

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Fri, 7 Feb 2003 00:56:49 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1044579409 14461 171.64.15.107 (7 Feb 2003 00:56:49 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4370



>Why should we care about this?
>If the packets have overlapping data it should be the same data,
>so it doesn't matter which data we keep.

Please see my previous couple of posts.  As I explained, chances are
this won't affect you; you can just disregard my post assuming you pass
data up to the application as soon as you are able (there's no
ambiguity in this case).

>If the overlapping data are different then there is no good reason
>to select one over the other. Selecting the earliest received
>data seems like a very arbitrary decision that doesn't buy us anything.

I agree in general, but in this class it buys us consistency during grading!
But I reiterate, as long as you write data to the application at the earliest
possible time (which you should do anyway), you don't need to worry about this.
.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: correct receiver behavior?
Date: Fri, 7 Feb 2003 00:57:46 +0000 (UTC)
Lines: 22
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1044579466 14479 171.64.15.107 (7 Feb 2003 00:57:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4371

"James Fan"  writes:

>> >suppose my receiver window begins at 1000 and ends at 4071 (3072 bytes
>> >total), when a packet of sequence numbers (1500-2035) arrives, I buffer
>it
>> >(leaving a gap of sequence numbers (1000-1499) in the receiving window).
>>

>[snip]

>> >c.) if a packet of seq num (800-1335) arrives, i only copy data of seq
>> >(1000-1335) into the receiving buffer, pass this portion of the data to
>> >application and advance receiver window to begin at 1336 (receiver window
>> >still ends at 4071). correct?
>>
>> Correct.

>It is my impression that after processing the packet and bumping the start
>of the receiver window to 1336, the receiver window would now end at
>(1336+3072-1) = 4407, not 4071. Is this not the case?

Oops, you're quite right--I didn't read the post carefully enough.
.

Path: shelby.stanford.edu!saga10.Stanford.EDU!smadhura
From: Madhura Sudhakar Sharangpani 
Newsgroups: su.class.cs244a
Subject: when ACK for SYN is lost
Date: Thu, 6 Feb 2003 16:59:13 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga10.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044579555 14503 171.64.15.140 (7 Feb 2003 00:59:15 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4372

In current STCP implementation, the server immidiately goes into control
loop, after sending an ACK to client, however if the ACK is lost, client
will continue retransmitting SYNs, so the server should not consider a SYN
packet illegal even if it has reached connection established state & ACk
for it, is that correct?
-Madhura.

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.D
Date: Fri, 7 Feb 2003 01:00:23 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1044579623 14591 171.64.15.107 (7 Feb 2003 01:00:23 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4373




>My implementation handles out-of-order packets, and reliably transfers
>very large files in unreliable mode.  It handles out-of-order packets by
>(obviously) buffering data in a receiver window.  My implementation passes
>(almost) all other tests but it is not passing Test 2.D.

>What are the specific sequences of operations that Test 2.D carries out to
>do its check?

It was just pointed out on here that this case was erroneously including data
in the FIN, so if you were stringent about what FIN packets you accepted
you might have just disregarded that packet.  If so, can you see if you
still fail this case?

2.D just sends a sequence of data (fully and partially overlapping) several
times.
.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test quota
Date: Fri, 7 Feb 2003 01:01:52 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1044579712 14831 171.64.15.107 (7 Feb 2003 01:01:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4374



>should'nt they be separate quota? or this is how its supposed to be?

No, otherwise you could just use your 2c test quota to test 2b also!

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: when ACK for SYN is lost
Date: Fri, 7 Feb 2003 01:02:47 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1044579767 14898 171.64.15.107 (7 Feb 2003 01:02:47 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4375


>In current STCP implementation, the server immidiately goes into control
>loop, after sending an ACK to client, however if the ACK is lost, client
>will continue retransmitting SYNs, so the server should not consider a SYN
>packet illegal even if it has reached connection established state & ACk
>for it, is that correct?

This was covered on the newsgroup before; you reply with a normal SYN-ACK.
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: part C makefile
Date: Fri, 7 Feb 2003 01:10:11 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044580211 15170 171.64.15.115 (7 Feb 2003 01:10:11 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4376

One or two people mentioned problems building part C using the provided
libftpcopy.a etc.

This should work "out of the box" with 'make stcp_ftp'.

(1) Can you please make sure you have the most recent version of the Makefile?
    (I remember fixing one or two small bugs a couple of weeks ago, so if you
     copied it before then, you may have got a broken version).
(2) Can you check that you're using GNU make (/usr/pubsw/bin/make)?

If you still have problems, please let me know.

.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: bad file number
Date: Thu, 6 Feb 2003 17:15:46 -0800
Lines: 22
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044580548 15344 171.64.15.72 (7 Feb 2003 01:15:48 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4377

I got messages like below on some tests when running the test script.
Did anyone see this message before on test runs?  Last year's newsgroup
had a similar posting and people suggested to take out printf's in
print_congestion_win, but I didn't have a printf there.


Test 2.L [out of 5]
Checks that transport layer does not exceed sender window.

Results:  NOT OK

Unexpected exit status 256.  Program output:

####Initiating a new connection now to 171.64.15.72:63976#### (sockfd=4)
====>network_send:dropping the packet
myconnect: mismatch in peer names  ("0.0.0.0:63976" != "0.0.0.0:0")
myconnect: Bad file number
recv: Error 0


Eric

.

Path: shelby.stanford.edu!saga22.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 17:38:20 -0800
Lines: 30
Distribution: su
Message-ID: 
References: 
    
   
  
NNTP-Posting-Host: saga22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044581901 16020 171.64.15.152 (7 Feb 2003 01:38:21 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4378

I'm getting the same problem to. Could it be a timing issue. Every so
often it works for me with the test script run. Sometimes it reports only
3 retransmissions. But it works just fine with your suggestions?

Rhea


On Thu, 6 Feb 2003, Priyanka Gupta wrote:

>
> I tried using that also, and it seems to work fine.
>
> If you could please take a look at it. I've placed the output at:
> /afs/ir.stanford.edu/users/p/r/priyanka/public/out1.txt
>
> I ran my server in reliable mode and then ran client.retrans on the other
> side.
>
> On Thu, 6 Feb 2003, Matthew Jonathan Holliman wrote:
>
> >
> > >I am retransmitting the entire window and it does retransmit it 5 times
> > >plus one original.
> >
> > Did you try using client.retrans in your grading_src/build directory?
> >
> >
>
>

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Thu, 6 Feb 2003 17:48:53 -0800
Lines: 32
Distribution: su
Message-ID: 
References: 
   
 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044582535 16408 171.64.15.110 (7 Feb 2003 01:48:55 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4379


how about the case, I mentioned earlier. WE haven't written to the
application yet, but just buffered the data.

i.e if I am expecting seq num: 400 and I get seq num 500 with 200 bytes of
data and then seq num 600 with 200 bytes of data.

The 100 bytes of data that came with seq num 500 would be overwritten by
the first 100 bytes of data with seq 600.

On Fri, 7 Feb 2003, Matthew Jonathan Holliman wrote:

>
>
> >Why should we care about this?
> >If the packets have overlapping data it should be the same data,
> >so it doesn't matter which data we keep.
>
> Please see my previous couple of posts.  As I explained, chances are
> this won't affect you; you can just disregard my post assuming you pass
> data up to the application as soon as you are able (there's no
> ambiguity in this case).
>
> >If the overlapping data are different then there is no good reason
> >to select one over the other. Selecting the earliest received
> >data seems like a very arbitrary decision that doesn't buy us anything.
>
> I agree in general, but in this class it buys us consistency during grading!
> But I reiterate, as long as you write data to the application at the earliest
> possible time (which you should do anyway), you don't need to worry about this.
>

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: bad file number
Date: Thu, 6 Feb 2003 17:56:24 -0800
Lines: 38
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044582988 16884 171.64.15.110 (7 Feb 2003 01:56:28 GMT)
X-Complaints-To: 
To: Eric Chenjian Xu 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4380


in case it helps...i was getting a similar problem because i wasn't
calculating my usec and sec for timeval properly and was overflowing the
struct writing over some other memory, causing the parent to read some
garbage over the syn socket....

you might have a smilar problem. In particluar make sure that you set your
sec and millisec appropriately and don't overflow...

the problem could be caused by some other overflowing also...

 On Thu, 6 Feb 2003, Eric Chenjian Xu
wrote:

> I got messages like below on some tests when running the test script.
> Did anyone see this message before on test runs?  Last year's newsgroup
> had a similar posting and people suggested to take out printf's in
> print_congestion_win, but I didn't have a printf there.
>
>
> Test 2.L [out of 5]
> Checks that transport layer does not exceed sender window.
>
> Results:  NOT OK
>
> Unexpected exit status 256.  Program output:
>
> ####Initiating a new connection now to 171.64.15.72:63976#### (sockfd=4)
> ====>network_send:dropping the packet
> myconnect: mismatch in peer names  ("0.0.0.0:63976" != "0.0.0.0:0")
> myconnect: Bad file number
> recv: Error 0
>
>
> Eric
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "John C. Wu" 
Newsgroups: su.class.cs244a
Subject: myaccept: Error 0  <- help please!
Date: Thu, 6 Feb 2003 18:18:30 -0800
Lines: 37
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab400df7.stanford.edu
X-Trace: news.Stanford.EDU 1044584376 17659 171.64.13.247 (7 Feb 2003 02:19:36 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4381

So I think I've implemkented everything required for reliable transmission.
However it doesn't work in the test script.

Whenever I try to test my client and server on my own, even transferring
huge 10MB files, everything works smoothly despite the dropped, mis-ordered,
and duplicated packets.

However, when I feed it into the test script, the only test that fails is
2.J, testing MY OWN client with MY OWN server.

I get the message

----------------------------------------------------------------------
Test 2.J [out of 14]
Checks student transmitter against student receiver.

Results:  NOT OK

Unexpected exit status -1.  Program output:
***Timeout expired during grading
Program output:

####Initiating a new connection now to 171.64.15.81:51471#### (sockfd=4)
server: TESTDATA.0,110230,Ok

----------------------------------------------------------------------

And looking through the test script output, I catch a lot of these messages:
myAccept: Error 0

Anybody have a clue as to what might be going wrong?

Thanks!

John


.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Fri, 7 Feb 2003 03:08:42 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References:              
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044587322 19635 171.64.15.66 (7 Feb 2003 03:08:42 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4382


>I'm getting the same problem to. Could it be a timing issue. Every so
>often it works for me with the test script run. Sometimes it reports only
>3 retransmissions. But it works just fine with your suggestions?

I've increased the timeout for the test to 10 secs rather than the 5 secs
it was originally, since this was causing problems for some people who
were calculating the timeouts incorrectly (e.g. using exponential backoff).
Does this fix the problem for you?

The test should complete well within 5 secs; if it doesn't, and your
code correctly implements the five retransmissions outside the script,
please check your timeout/RTO handling.
.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Packets with overlapping data?
Date: Fri, 7 Feb 2003 03:09:58 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References:        
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044587398 19659 171.64.15.66 (7 Feb 2003 03:09:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4383

>how about the case, I mentioned earlier. WE haven't written to the
>application yet, but just buffered the data.

As I indicated, provided you write data to the application as quickly as
possible (which you should have been doing all along), we don't test this
case, so it's academic.

.

Path: shelby.stanford.edu!saga21.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Thu, 6 Feb 2003 19:23:16 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
     
    
   
 
 
NNTP-Posting-Host: saga21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044588198 20077 171.64.15.151 (7 Feb 2003 03:23:18 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4384

Yea, the test works just fine now. Does that mean my timeout/RTO handling
is incorrect or am I okay? I think I just needed an extra second or so to
get the last retransmission in. Thanks.

Rhea


On Fri, 7 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >I'm getting the same problem to. Could it be a timing issue. Every so
> >often it works for me with the test script run. Sometimes it reports only
> >3 retransmissions. But it works just fine with your suggestions?
>
> I've increased the timeout for the test to 10 secs rather than the 5 secs
> it was originally, since this was causing problems for some people who
> were calculating the timeouts incorrectly (e.g. using exponential backoff).
> Does this fix the problem for you?
>
> The test should complete well within 5 secs; if it doesn't, and your
> code correctly implements the five retransmissions outside the script,
> please check your timeout/RTO handling.
>

.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: Re: part C makefile
Date: Thu, 06 Feb 2003 19:40:11 -0800
Lines: 32
Distribution: su
Message-ID: 
References: 
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044589203 20592 127.0.0.1 (7 Feb 2003 03:40:03 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4385

Matthew Jonathan Holliman wrote:
> One or two people mentioned problems building part C using the provided
> libftpcopy.a etc.
> 
> This should work "out of the box" with 'make stcp_ftp'.
> 
> (1) Can you please make sure you have the most recent version of the Makefile?
>     (I remember fixing one or two small bugs a couple of weeks ago, so if you
>      copied it before then, you may have got a broken version).
> (2) Can you check that you're using GNU make (/usr/pubsw/bin/make)?
> 
> If you still have problems, please let me know.
> 

So this is what I get using the Makefile I just copied over from 
/afs/ir/class/cs244a/WWW/homeworks/hw2/src/Makefile.


saga3:~/private/cs244a/proj2> /afs/ir/class/cs244a/bin/test_code.pl hw2c 
transport.c
Creating submission tarball...
transport.c

Starting...
Test B, new source tree required, extracting into grading_src/build...
transport.c

make stcp_ftp
make: *** No rule to make target `stcp_ftp'.  Stop.
make failed (error status 2)
couldn't submit code for testing

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!mmahathi
From: Mahathi Sai Prasanna Mahabhashyam 
Newsgroups: su.class.cs244a
Subject: High load causing timeouts
Date: Thu, 6 Feb 2003 21:07:22 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044594445 23636 171.64.15.80 (7 Feb 2003 05:07:25 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4386

Hi everyone,
   Just wanted to bring to your notice that, high load on
some servers is causing timeouts in transmitting large files between
server and client. In case you have such problems, try running on another
server...

Mahathi.


.

Path: shelby.stanford.edu!elaine27.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: overlapping data
Date: Thu, 6 Feb 2003 22:19:31 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine27.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044598772 26160 171.64.15.102 (7 Feb 2003 06:19:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4387

I'm failing on d, e, f which do things like overlapping packet, etc.  Is
there any way to tell my server to do things like that ("-U" is not
helping here), or do I have to use my precious test runs?

Eric


.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Test 2G error
Date: Thu, 6 Feb 2003 22:26:00 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1044598930 26266 128.12.184.109 (7 Feb 2003 06:22:10 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4388

Getting the following error:
Please help:
Test 2.G, using current source tree and build..... ..
Starting student client: ./client.log -U -p .server_port -f TESTDATA.2 foo
connected to 171.64.15.110 at port 36045
client: TESTDATA.2

Can't create client output .output.normal_unreliable.TESTDATA.2!
couldn't submit code for testing
..



.

Path: shelby.stanford.edu!epic20.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: Re: Test 2G error
Date: Thu, 6 Feb 2003 22:30:01 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: epic20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044599403 26479 171.64.15.55 (7 Feb 2003 06:30:03 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4389

Are you running out of disk space?
On Thu, 6 Feb 2003, Pavan wrote:

> Getting the following error:
> Please help:
> Test 2.G, using current source tree and build..... ..
> Starting student client: ./client.log -U -p .server_port -f TESTDATA.2 foo
> connected to 171.64.15.110 at port 36045
> client: TESTDATA.2
>
> Can't create client output .output.normal_unreliable.TESTDATA.2!
> couldn't submit code for testing
> .
>
>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: Karn//Partridge for single ack
Date: Thu, 6 Feb 2003 22:45:53 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1044600354 26880 128.12.79.199 (7 Feb 2003 06:45:54 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4390

Hi,

I couldn't find anything about this on the newsgroup, apologies if I missed
it. My question is this: how does the algo that estimates timeouts deal with
one ACK that acks several data packets? So say the server sends out data
packets A, B, and C. The client acks them all, but the acks for A and B are
lost. The ack for C gets in before any timeouts occur.So the ack for C is
essentially acking A, B and C. Should we update the estimatedRTT using all
three packets? If so, then which order should we do it in (since it's a
weighted average, the order makes a difference)?

thanks,
vj


.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: test quota
Date: Thu, 06 Feb 2003 22:56:02 -0800
Lines: 10
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044600938 27326 128.12.72.54 (7 Feb 2003 06:55:38 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4391

Does that mean the quotas will be reset after 2b is due and before 2c is 
due?

Matthew Jonathan Holliman wrote:
>>should'nt they be separate quota? or this is how its supposed to be?
> 
> 
> No, otherwise you could just use your 2c test quota to test 2b also!
> 

.

Path: shelby.stanford.edu!saga21.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: timing issues
Date: Thu, 6 Feb 2003 23:07:42 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044601663 27721 171.64.15.151 (7 Feb 2003 07:07:43 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4392

Has anyone found, or know a way to get better than 1 sec accuracy.
gettimeofday only updates every second. I know this was why I was failing
test case 2.k. Maybes other have had similar problems?

Rhea

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: test script leftovers
Date: Thu, 6 Feb 2003 23:07:53 -0800
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044601674 27726 171.64.15.110 (7 Feb 2003 07:07:54 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4393

Hi folks,
Maybe this can be of interest to any of you and I would guess it
would certainly be of interest to the TAs. I've been having weird
results while running the test script all day long.
First of all, the script would take a long time (more than 20mins).
Secondly, without modifiying my code at all, I would get certain tests to
pass and others would fail and in the next round it would be some other
tests failing and the previous ones would pass fine.
I ran both client and server under purify and I didn't have any
memory leaks or array bound checks or anything. I revised my
code again and again and couldn't find the culprit.

I was going to give up until I noticed that after the test script runs
it leaves some processes hanging around.
They are all of the type:
../client.retrans -p .server_port -f TESTDATA.2 foo
../client.retrans -p .server_port -f TESTDATA.0 foo
....

It turns out that if I kill all of them before running the test
script again I pass all the tests consistently, all the time.
I wonder if the script was getting confused by the result produced
by those spurious processes but I'd like to suggest that the TA's
make sure there are no leftover processes from succesive runs of the
script during grading.

My two cents,
Rafa

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!zacharym
From: Zak Middleton 
Newsgroups: su.class.cs244a
Subject: This may be causing you unexpected timeouts...
Date: Thu, 6 Feb 2003 23:10:40 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044601842 27842 171.64.15.85 (7 Feb 2003 07:10:42 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4394


Don't know if this will help many people, but this is related to the
problem of timing out when transferring large files.

Excessive Debug printouts will greatly increase the likelihood that you
timeout during the transfer.

I made the adjustment of not 'aging' retransmitted segments as part of
Go-back-N (as many of you have suggested), in hopes that this would stop
the termination due to excessive retransmissions, but still the transfer
would timeout. This was really frustrating because I knew the ACK packets
were on their way, but the server was repeatedly timing out before
processing them. Then it became clear: all the debug printouts could make
each time between control_loops > 20ms (factoring in the clock
granularity), which means a timeout next time around.

Other people may have other problems, but just wanted to save some people
time if this is affecting them.

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Re: Karn//Partridge for single ack
Date: Thu, 6 Feb 2003 23:38:05 -0800
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044603487 28502 171.64.15.69 (7 Feb 2003 07:38:07 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4395

hi! I believe we should update the estimatedRTT only using the most-recent
ACK received (i.e. ack for C in your example below), when the sender
receives the ack for C, it will implicitly know that packets A and B must
have been received by the receiver.

any TA thoughts otherwise? thanks!
Tan

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!ssho
From: Stephen Ho 
Newsgroups: su.class.cs244a
Subject: Re: test quota
Date: Thu, 6 Feb 2003 23:41:22 -0800
Lines: 20
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044603685 28628 171.64.15.85 (7 Feb 2003 07:41:25 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4396

But couldn't you check for that so that if we needed to rewrite some of
part A, we wouldn't be penalized for running the test script on a previous
assignment?  I'm keeping my fingers crossed and hoping this isn't true,
but I can't waste a test to test it out.

two-tests-wasted-on-2a Stephen

On Fri, 7 Feb 2003, Matthew Jonathan Holliman wrote:

>
>
> >should'nt they be separate quota? or this is how its supposed to be?
>
> No, otherwise you could just use your 2c test quota to test 2b also!
>
>




.

Path: shelby.stanford.edu!not-for-mail
From: Steve Garrity 
Newsgroups: su.class.cs244a
Subject: Re: timing issues
Date: Fri, 07 Feb 2003 00:44:40 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: garrity2.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044607479 883 128.12.74.77 (7 Feb 2003 08:44:39 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4397

gettimeofday() actually updates every microsecond, I believe, but it's stored
in a different field.  Check out the manpage for the fields in the struct
timeval that it updates.  -Steve

Rhea Sherman Mortam wrote:

> Has anyone found, or know a way to get better than 1 sec accuracy.
> gettimeofday only updates every second. I know this was why I was failing
> test case 2.k. Maybes other have had similar problems?
>
> Rhea

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Purify: Freeing unallocated memory error
Date: Fri, 7 Feb 2003 02:44:58 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044614699 4330 171.64.15.117 (7 Feb 2003 10:44:59 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4398

Since I have packets scatter around all over the place, it was not easy to
avoid memory leak. I am just happy my program finishes without 0 memory
leak and 0 potential memory leak. But purify complains that I free some
pointers multiple times.

It is very likely that I have two pointers pointing to the same piece of
memory, and I called free on both of them. How to avoid it?

I tried something like

char* c1 = (char*)malloc(100);
char* c2 = c1;
....

if (c1) free(c1); c1 = NULL;
if (c2) free(c2); c2 = NULL;

Purify still complains.

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: Purify: Freeing unallocated memory error
Date: Fri, 7 Feb 2003 02:53:11 -0800
Lines: 27
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044615193 4505 171.64.15.117 (7 Feb 2003 10:53:13 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4399

Never mind. I have accurately pinpointed where the problem is and have
fixed it.


On Fri, 7 Feb 2003, Jichun Zhu wrote:

> Since I have packets scatter around all over the place, it was not easy to
> avoid memory leak. I am just happy my program finishes without 0 memory
> leak and 0 potential memory leak. But purify complains that I free some
> pointers multiple times.
>
> It is very likely that I have two pointers pointing to the same piece of
> memory, and I called free on both of them. How to avoid it?
>
> I tried something like
>
> char* c1 = (char*)malloc(100);
> char* c2 = c1;
> ...
>
> if (c1) free(c1); c1 = NULL;
> if (c2) free(c2); c2 = NULL;
>
> Purify still complains.
>
>

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: Karn//Partridge for single ack
Date: Fri, 7 Feb 2003 03:40:32 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044618038 5400 171.64.15.85 (7 Feb 2003 11:40:38 GMT)
X-Complaints-To: 
To: Vijay Chemburkar 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4400


Hi vj.  Look back at this post by one of the TAs:

	From: Steve Jacobson 
	Newsgroups: su.class.cs244a
	Subject: Re: Calculating the RTT and truncated packets

For your example, Steve suggested to just use C for calculating
the sample RTT, since that would give the most accurate value.

- Erik

On Thu, 6 Feb 2003, Vijay Chemburkar wrote:

> Hi,
>
> I couldn't find anything about this on the newsgroup, apologies if I missed
> it. My question is this: how does the algo that estimates timeouts deal with
> one ACK that acks several data packets? So say the server sends out data
> packets A, B, and C. The client acks them all, but the acks for A and B are
> lost. The ack for C gets in before any timeouts occur.So the ack for C is
> essentially acking A, B and C. Should we update the estimatedRTT using all
> three packets? If so, then which order should we do it in (since it's a
> weighted average, the order makes a difference)?
>
> thanks,
> vj
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: exceeding the 6 retrans limit
Date: Fri, 7 Feb 2003 09:23:48 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1044638629 15003 128.12.22.55 (7 Feb 2003 17:23:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4401

In most cases my client and server seem to be acting normally, but about 25%
of the time it'll exceed the 6 retrans limit...
what seems to be happening is this:
After sending the first window of 3072 bytes, my client takes a while to
process and ACK the packets...
Thus, each subsequent retransmission only gets offset by 1 packet (536
bytes) since that's all that's been ACKed.
This means the last packet in the first window is the first packet in the
6th retransmission... so it errors since we've hit
6 retransmissions. This messes up a lot of results in the test script since
they don't expect it to end early...

Am I just grossly inefficient somewhere? Has anyone else run into this
problem? Thanks.


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: What is this test doing? 2.K
Date: Fri, 7 Feb 2003 17:43:40 +0000 (UTC)
Organization: Stanford University
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1044639820 15534 171.64.15.109 (7 Feb 2003 17:43:40 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4402


Here is my test result

Test 2.K [out of 2.5]
Checks that Tx enforces 5 retransmissions.

Results:  NOT OK

Retransmission count of 5 not enforced
(Your code retransmitted sequence number 3274 up to 4 times)
Client output:

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: testing script real slooow ..
Date: Fri, 7 Feb 2003 10:16:57 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044641818 16577 171.64.15.69 (7 Feb 2003 18:16:58 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4403

not sure if anyone else is observing this behavior:

starting last night about 2:30AM, I noticed that the test script began
running REAL slow ... I had to ctrl+c out of one run which took 20+
minutes (and still did not complete). I tried a different elaine machine
(lightly-loaded) but did not help.

does anyone know where the bottleneck might be? or maybe i have too many
fprintf statements in output (when I tested earlier on with all my
fprintfs, the script finished in about 4 minutes)

thanks!
Tan

.

Path: shelby.stanford.edu!saga16.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: Re: exceeding the 6 retrans limit
Date: Fri, 7 Feb 2003 10:17:59 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044641881 16635 171.64.15.146 (7 Feb 2003 18:18:01 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4404

Hmm, when you say 6 rtrans, do mean 1 transmission and 5 retransmissions?
For this is what you want to do. Also, in each retransmission you have to
retransmit the whole window. Lastly, the test script times out after 10
seconds (used to be 5 seconds, or may have been changed again). Did that
help any?

Rhea

On Fri, 7 Feb 2003, sc wrote:

> In most cases my client and server seem to be acting normally, but about 25%
> of the time it'll exceed the 6 retrans limit...
> what seems to be happening is this:
> After sending the first window of 3072 bytes, my client takes a while to
> process and ACK the packets...
> Thus, each subsequent retransmission only gets offset by 1 packet (536
> bytes) since that's all that's been ACKed.
> This means the last packet in the first window is the first packet in the
> 6th retransmission... so it errors since we've hit
> 6 retransmissions. This messes up a lot of results in the test script since
> they don't expect it to end early...
>
> Am I just grossly inefficient somewhere? Has anyone else run into this
> problem? Thanks.
>
>
>

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: sending/receiving too many duplicate ACKs
Date: Fri, 7 Feb 2003 11:51:46 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044647509 19979 171.64.15.69 (7 Feb 2003 19:51:49 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4405

in large data transfer, the probability of lost/mis-sequenced/duplicate
packets occurring rise sharply, which, in turn, causes a large number of
duplicate ACKs to be sent back to the sender. if not handled carefully,
the sender will keep Go-Back-N and flood the network with more duplicate
data (which will trigger EVEN MORE duplicate ACKs).

anyone have any thought on how this might be handled gracefully? like
putting a cap on how many duplicate ACKs a receiver may be able to send
(without causing a deadlock situation where both sender and receiver wait
for the other party to do something)?

thanks!
Tan

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Test 2.K
Date: Fri, 7 Feb 2003 20:27:03 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References:                     
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044649623 21337 171.64.15.115 (7 Feb 2003 20:27:03 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4406

>Yea, the test works just fine now. Does that mean my timeout/RTO handling
>is incorrect or am I okay? I think I just needed an extra second or so to
>get the last retransmission in. Thanks.

It's still most likely incorrect.  I just increased the timeout for this test
to avoid confusing people.

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: part C makefile
Date: Fri, 7 Feb 2003 20:33:05 +0000 (UTC)
Lines: 20
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044649985 21514 171.64.15.115 (7 Feb 2003 20:33:05 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4408


>So this is what I get using the Makefile I just copied over from 
>/afs/ir/class/cs244a/WWW/homeworks/hw2/src/Makefile.

You'll need to submit all required source files (*.c, *.h) and the Makefile.

>saga3:~/private/cs244a/proj2> /afs/ir/class/cs244a/bin/test_code.pl hw2c 
>transport.c
>Creating submission tarball...
>transport.c

>Starting...
>Test B, new source tree required, extracting into grading_src/build...
>transport.c

>make stcp_ftp
>make: *** No rule to make target `stcp_ftp'.  Stop.
>make failed (error status 2)
>couldn't submit code for testing

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: overlapping data
Date: Fri, 7 Feb 2003 20:34:02 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044650042 21569 171.64.15.115 (7 Feb 2003 20:34:02 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4409


>I'm failing on d, e, f which do things like overlapping packet, etc.  Is
>there any way to tell my server to do things like that ("-U" is not
>helping here), or do I have to use my precious test runs?

You could force your server to send a packet with same sequence number,
different lengths, etc.


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test quota
Date: Fri, 7 Feb 2003 20:36:37 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044650197 21663 171.64.15.115 (7 Feb 2003 20:36:37 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4410


>But couldn't you check for that so that if we needed to rewrite some of
>part A, we wouldn't be penalized for running the test script on a previous
>assignment?  I'm keeping my fingers crossed and hoping this isn't true,
>but I can't waste a test to test it out.

I suppose I could, but I don't.  Maybe next year.

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script leftovers
Date: Fri, 7 Feb 2003 20:38:16 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044650296 21702 171.64.15.115 (7 Feb 2003 20:38:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4411

Thanks.  I thought this bug was fixed (when I run the script repeatedly
throughout a list of submissions, no processes hang around in between
tests), but perhaps not.  We will make sure this doesn't happen during
grading.

.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: Re: exceeding the 6 retrans limit
Date: Fri, 7 Feb 2003 12:39:22 -0800
Lines: 40
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1044650362 21727 128.12.22.55 (7 Feb 2003 20:39:22 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4412

oh. I think my problem is that I am sending the entire window in one
network_send command... which means if a UDP packet is dropped the whole
window is dropped... ?


"Rhea Sherman Mortam"  wrote in message

> Hmm, when you say 6 rtrans, do mean 1 transmission and 5 retransmissions?
> For this is what you want to do. Also, in each retransmission you have to
> retransmit the whole window. Lastly, the test script times out after 10
> seconds (used to be 5 seconds, or may have been changed again). Did that
> help any?
>
> Rhea
>
> On Fri, 7 Feb 2003, sc wrote:
>
> > In most cases my client and server seem to be acting normally, but about
25%
> > of the time it'll exceed the 6 retrans limit...
> > what seems to be happening is this:
> > After sending the first window of 3072 bytes, my client takes a while to
> > process and ACK the packets...
> > Thus, each subsequent retransmission only gets offset by 1 packet (536
> > bytes) since that's all that's been ACKed.
> > This means the last packet in the first window is the first packet in
the
> > 6th retransmission... so it errors since we've hit
> > 6 retransmissions. This messes up a lot of results in the test script
since
> > they don't expect it to end early...
> >
> > Am I just grossly inefficient somewhere? Has anyone else run into this
> > problem? Thanks.
> >
> >
> >
>


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: What is this test doing? 2.K
Date: Fri, 7 Feb 2003 20:40:50 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044650450 21804 171.64.15.115 (7 Feb 2003 20:40:50 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4413


It checks that you retransmit five times.  Check that you didn't
make some off-by-one error, e.g. using >= rather than > somewhere.

>Retransmission count of 5 not enforced
>(Your code retransmitted sequence number 3274 up to 4 times)
>Client output:

.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: Re: testing script real slooow ..
Date: Fri, 7 Feb 2003 12:42:03 -0800
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1044650527 21833 128.12.79.199 (7 Feb 2003 20:42:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4414

check out the 'test script leftovers' post from Rafael Hernandez last
night...it saved me some pain. bascially, the script isn't always so good
about killing its processes.

"Tan Gao (weiwei)"  wrote in message

> not sure if anyone else is observing this behavior:
>
> starting last night about 2:30AM, I noticed that the test script began
> running REAL slow ... I had to ctrl+c out of one run which took 20+
> minutes (and still did not complete). I tried a different elaine machine
> (lightly-loaded) but did not help.
>
> does anyone know where the bottleneck might be? or maybe i have too many
> fprintf statements in output (when I tested earlier on with all my
> fprintfs, the script finished in about 4 minutes)
>
> thanks!
> Tan
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: exceeding the 6 retrans limit
Date: Fri, 7 Feb 2003 12:47:55 -0800
Lines: 53
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044650945 22030 128.12.186.92 (7 Feb 2003 20:49:05 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4415

The assignment specifies a maximum packet size.  You should not be sending
your 3072 byte window in one UDP packet.

-Russ

"sc"  wrote in message

> oh. I think my problem is that I am sending the entire window in one
> network_send command... which means if a UDP packet is dropped the whole
> window is dropped... ?
>
>
> "Rhea Sherman Mortam"  wrote in message
> 
> > Hmm, when you say 6 rtrans, do mean 1 transmission and 5
retransmissions?
> > For this is what you want to do. Also, in each retransmission you have
to
> > retransmit the whole window. Lastly, the test script times out after 10
> > seconds (used to be 5 seconds, or may have been changed again). Did that
> > help any?
> >
> > Rhea
> >
> > On Fri, 7 Feb 2003, sc wrote:
> >
> > > In most cases my client and server seem to be acting normally, but
about
> 25%
> > > of the time it'll exceed the 6 retrans limit...
> > > what seems to be happening is this:
> > > After sending the first window of 3072 bytes, my client takes a while
to
> > > process and ACK the packets...
> > > Thus, each subsequent retransmission only gets offset by 1 packet (536
> > > bytes) since that's all that's been ACKed.
> > > This means the last packet in the first window is the first packet in
> the
> > > 6th retransmission... so it errors since we've hit
> > > 6 retransmissions. This messes up a lot of results in the test script
> since
> > > they don't expect it to end early...
> > >
> > > Am I just grossly inefficient somewhere? Has anyone else run into this
> > > problem? Thanks.
> > >
> > >
> > >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: SYN-ACK sequence problems?
Date: Fri, 07 Feb 2003 13:35:49 -0800
Lines: 31
Distribution: su
Message-ID: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044653725 23543 128.12.72.54 (7 Feb 2003 21:35:25 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4416

In my last test before submitting, I managed to fail 2.G (SYN is ACKed 
properly).  I didn't fail it before, but here's what I'm pretty sure 
happened:

2 SYN packets sent by active end (i.e. network delays one)
passive end receives 1st SYN
passive end responds with correct SYN-ACK
(some data exchanged, moving the windows)
passive end receives 2nd SYN
* passive end responds with 2nd SYN-ACK

(with the * on the problematic step)

I've got my code set up so that ALL ACK packets have th_ack set to the 
sequence number at the base of my current receive window.  I also send 
exactly the same initial sequence correctly.

But, it seems that once some data is exchanged, the th_ack field is set 
to a value higher than the active end expects.  That is, the active end 
seems to expect SYN-ACK.th_ack to be at the initial base of the receive 
window (as they sent in the original SYN packet), while I'm sending back 
the current base of the receive window in the second SYN-ACK - that is, 
my ACK specifies the next byte I expect.  A little confusing, but what 
is the correct behavior?

I'd like to think this wouldn't be a problem, because since data is (I'm 
mostly sure) already exchanged the active end MUST have already received 
a SYN-ACK once, and so my extra SYN-ACK is redundant (in fact, my active 
end simply drops redundant SYN-ACKs) - but the spec says to ACK every 
packet.

.

Path: shelby.stanford.edu!saga11.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Midterm review session?
Date: Fri, 7 Feb 2003 22:02:31 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga11.stanford.edu
X-Trace: news.Stanford.EDU 1044655351 24628 171.64.15.141 (7 Feb 2003 22:02:31 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4417



HI,

Is there a review session today?

thanx,
ceekay


.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Re: Midterm review session?
Date: Fri, 7 Feb 2003 14:29:53 -0800
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044656994 25395 171.64.15.69 (7 Feb 2003 22:29:54 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4418

i asked matthew and he confirmed there will be a review session 3:15 in
Gates B01

FYI: Google CEO talk today @ 4pm in TCSEQ 200

Tan

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: SYN-ACK sequence problems?
Date: Fri, 7 Feb 2003 15:07:44 -0800
Lines: 47
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1044659334 26576 128.12.186.92 (7 Feb 2003 23:08:54 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4419

Page 381 of the text has the TCP state-transition diagram.  Now, the TCP we
are implementing has a slightly different state diagram, but the important
thing to note is that the operation of TCP changes based on the state it is
in.

Once the server has received a SYN packet and responds with a SYN-ACK it
moves to the established state (since we have a two way handshake).  Once
the server is in the established state, it does not respond to future SYN
packets.

--Russ

"Kevin Christopher"  wrote in message

> In my last test before submitting, I managed to fail 2.G (SYN is ACKed
> properly).  I didn't fail it before, but here's what I'm pretty sure
> happened:
>
> 2 SYN packets sent by active end (i.e. network delays one)
> passive end receives 1st SYN
> passive end responds with correct SYN-ACK
> (some data exchanged, moving the windows)
> passive end receives 2nd SYN
> * passive end responds with 2nd SYN-ACK
>
> (with the * on the problematic step)
>
> I've got my code set up so that ALL ACK packets have th_ack set to the
> sequence number at the base of my current receive window.  I also send
> exactly the same initial sequence correctly.
>
> But, it seems that once some data is exchanged, the th_ack field is set
> to a value higher than the active end expects.  That is, the active end
> seems to expect SYN-ACK.th_ack to be at the initial base of the receive
> window (as they sent in the original SYN packet), while I'm sending back
> the current base of the receive window in the second SYN-ACK - that is,
> my ACK specifies the next byte I expect.  A little confusing, but what
> is the correct behavior?
>
> I'd like to think this wouldn't be a problem, because since data is (I'm
> mostly sure) already exchanged the active end MUST have already received
> a SYN-ACK once, and so my extra SYN-ACK is redundant (in fact, my active
> end simply drops redundant SYN-ACKs) - but the spec says to ACK every
> packet.
>


.

Path: shelby.stanford.edu!elaine14.Stanford.EDU!renedieu
From: Rene Nahele Patnode 
Newsgroups: su.class.cs244a
Subject: Problem with testclient
Date: Fri, 7 Feb 2003 15:22:04 -0800
Lines: 27
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine14.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044660126 26967 171.64.15.79 (7 Feb 2003 23:22:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4420

Unfortunately, I used up my last test, and things don't seem to be
going well. On all of the tests that use testclient (D, E, F, and L),
I get the following problem (everything else works perfectly):

Starting student client: ./testclient  -p .server_port -f
net_instruct_pkts_overlapping_lower_window foo

Next timeout 0 seconds 1000 useconds

Next timeout 0 seconds 77149 useconds
warning:  client exited with non-zero status (256)
program output:

####Initiating a new connection now to 171.64.15.79:37657#### (sockfd=4)
myconnect: mismatch in peer names  ("0.0.0.0:37657" != "0.0.0.0:0")
myconnect: mismatch in peer names  ("0.0.0.0:37657myconnect" != ":
0.0.0.0Bad file number:0
")
myconnect: Bad file number
Syn: Sequence Number: Error 0
Init: Syn: Error 0
recv: Error 0

Why is testclient exiting with status 256?

If anyone can help me really quickly, I would greatly appreciate it.

.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: quick question about submission
Date: Fri, 7 Feb 2003 15:34:13 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1044660859 27373 128.12.196.91 (7 Feb 2003 23:34:19 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4421

Last night, after I submitted, I look at my submissions directory and when I
press "Tab" after the files.tar.gz, I can see the files that I submitted and
the "transport.c" is there.
However, just now, I tried to look at it again to make sure that my
submissions are there. However, the "transport.c" is not there anymore for
some reasons.
I'm just wondering whether when we submit our files, is it just linking to
our directory or we really upload our files to the submissions directory ?

Does anybody else also encounter this problem ?

Thanks,
Honggo



.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: Re: exceeding the 6 retrans limit
Date: Fri, 7 Feb 2003 15:47:37 -0800
Lines: 68
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1044661657 27856 128.12.22.55 (7 Feb 2003 23:47:37 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4422

thanks. yeah, I realized this later...
at first I thought network_send broke up data into multiple UDP packets..
fixed now.

"Russell Greene"  wrote in message

> The assignment specifies a maximum packet size.  You should not be sending
> your 3072 byte window in one UDP packet.
>
> -Russ
>
> "sc"  wrote in message
> 
> > oh. I think my problem is that I am sending the entire window in one
> > network_send command... which means if a UDP packet is dropped the whole
> > window is dropped... ?
> >
> >
> > "Rhea Sherman Mortam"  wrote in message
> > 
> > > Hmm, when you say 6 rtrans, do mean 1 transmission and 5
> retransmissions?
> > > For this is what you want to do. Also, in each retransmission you have
> to
> > > retransmit the whole window. Lastly, the test script times out after
10
> > > seconds (used to be 5 seconds, or may have been changed again). Did
that
> > > help any?
> > >
> > > Rhea
> > >
> > > On Fri, 7 Feb 2003, sc wrote:
> > >
> > > > In most cases my client and server seem to be acting normally, but
> about
> > 25%
> > > > of the time it'll exceed the 6 retrans limit...
> > > > what seems to be happening is this:
> > > > After sending the first window of 3072 bytes, my client takes a
while
> to
> > > > process and ACK the packets...
> > > > Thus, each subsequent retransmission only gets offset by 1 packet
(536
> > > > bytes) since that's all that's been ACKed.
> > > > This means the last packet in the first window is the first packet
in
> > the
> > > > 6th retransmission... so it errors since we've hit
> > > > 6 retransmissions. This messes up a lot of results in the test
script
> > since
> > > > they don't expect it to end early...
> > > >
> > > > Am I just grossly inefficient somewhere? Has anyone else run into
this
> > > > problem? Thanks.
> > > >
> > > >
> > > >
> > >
> >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Re: quick question about submission
Date: Fri, 7 Feb 2003 15:48:27 -0800
Lines: 29
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1044661713 27926 128.12.196.91 (7 Feb 2003 23:48:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4423

Never mind my previous question.
When I tab after the files.tar.gz, it's actually showing the files in my
current directory not the files inside files.tar.gz.

Sorry about that.
Honggo

"Honggo Wijaya"  wrote in message

> Last night, after I submitted, I look at my submissions directory and when
I
> press "Tab" after the files.tar.gz, I can see the files that I submitted
and
> the "transport.c" is there.
> However, just now, I tried to look at it again to make sure that my
> submissions are there. However, the "transport.c" is not there anymore for
> some reasons.
> I'm just wondering whether when we submit our files, is it just linking to
> our directory or we really upload our files to the submissions directory ?
>
> Does anybody else also encounter this problem ?
>
> Thanks,
> Honggo
>
>
>


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: test script attempts - I got hosed
Date: Fri, 7 Feb 2003 16:00:27 -0800
Lines: 32
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044662430 28388 171.64.15.115 (8 Feb 2003 00:00:30 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4424

I was trying to redirect the debug output to a file,
and I thought the script wasn't working since the
file wasn't getting updated in my local directory,
so I killed it (ls -latr should have shown it as
the latest file, but it didn't).

That happened twice.

Then I ran the script w/o redirecting the output,
and it told me I had already used 2 attempts.
But I got no output on those attempts.

So I was able to perform only one test run.

But the point is that unless we get a full run
(list of 'OK', 'NOT OK'), the run should not count
as an attempt.

Either way I think some work needs to be done to
make the scripts more user friendly, especially for
people w/ 'fat fingers' like me.

I'd also like a definitive answer on when the 3 attempts
starts ticking.  Is it 24 hours before the deadline, e.g.,
Thursday @ 5PM, as the website says?
Or is it at Friday 12AM, as the script implies:
   Daily quota of 3 test attempts applies (from Feb 7 onwards)?

thanks,

- Erik

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: test script attempts - I got hosed
Date: Fri, 7 Feb 2003 18:28:03 -0800
Lines: 45
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine34.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044671286 6528 171.64.15.109 (8 Feb 2003 02:28:06 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4425

I think I lost a precious test run as well, but for different reason. The
script didn't work, Matthew was sitting next to me at Sweethall when it
happened, and he explained it was a bug in the script, and we just needed
to rerun the test.

After he left, I found out that the previous failed test run was counted
towards my quota. But it was too late.


On Fri, 7 Feb 2003, Erik Damian Weathers wrote:

> I was trying to redirect the debug output to a file,
> and I thought the script wasn't working since the
> file wasn't getting updated in my local directory,
> so I killed it (ls -latr should have shown it as
> the latest file, but it didn't).
>
> That happened twice.
>
> Then I ran the script w/o redirecting the output,
> and it told me I had already used 2 attempts.
> But I got no output on those attempts.
>
> So I was able to perform only one test run.
>
> But the point is that unless we get a full run
> (list of 'OK', 'NOT OK'), the run should not count
> as an attempt.
>
> Either way I think some work needs to be done to
> make the scripts more user friendly, especially for
> people w/ 'fat fingers' like me.
>
> I'd also like a definitive answer on when the 3 attempts
> starts ticking.  Is it 24 hours before the deadline, e.g.,
> Thursday @ 5PM, as the website says?
> Or is it at Friday 12AM, as the script implies:
>    Daily quota of 3 test attempts applies (from Feb 7 onwards)?
>
> thanks,
>
> - Erik
>
>

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Object files for milestone hw2c
Date: Fri, 7 Feb 2003 19:09:12 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044673753 7827 171.64.15.70 (8 Feb 2003 03:09:13 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4426

Hi,
I'm a bit confused about the object files for milestone C that we can use.
It seems that main.o and helper.o are missing from the provided directory
on the assignment so we really cannot test our transport implementation
with your solution to assignment #1.

If you provide all the objects to create a working ftpclient and we link
it with our transport implementation and that turns out to work OK for us
we don't have to provide our changed implementation to assignment 1.
In this case why do we need to submit libftpcopy.a? this is one of the
files that you provide.

I might be asking the obvious but the assigment deliverables for this
milestone seem a bit confusing to me.

Thanks
Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: 2.C issue
Date: Fri, 07 Feb 2003 21:47:55 -0800
Lines: 52
Distribution: su
Message-ID: 
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044683275 12123 127.0.0.1 (8 Feb 2003 05:47:55 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4427

When debug_ftpd attempts to open a data connection.  I show the 
following output:

### using port number 64425 for data connection###
<--- 150 Opening ASCII mode data connection for /bin/ls.
####Initiating a new connection now to 0.0.0.0:34670#### (sockfd=7)


The control connection works just fine, it's only when debug_ftpd 
attempts to setup the data connection to send the /bin/ls result to 
our.ftpcopy (running over my stcp).  Further output from debug_ftpd 
suggest that the issue is with the 0.0.0.0 ip address, since it gets a 
network_recv error later on:

child:pid=16571, sd=7, ad=9
send_syn:seq=6,ack=0
child (pid#16571): inside control_loop:sock_io#7, appl_io#9
pid#16571: error on network_recv: got -1 bytes, errno=146
pid#16571: transport_sock_io: network_recv() error!
: Connection refused


I know debug_ftpd has the ip of the machine running the our.ftpcopy, 
based on the following ouput from debug_ftpd (corresponding to the 
output during ftp control connection setup):
elaine15:~> /afs/ir/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/debug_ftpd
ftpd wrapper running on 

####Accepting a new connection now at port# 64421#### (sockfd=3)
parent: ad=6, synd=8

child:pid=16569, sd=3, ad=5
child (pid#16569): inside control_loop:sock_io#3, appl_io#5
transport_sock_io: received a SYN packet with seq=88, ack=0
send_syn_ack:seq=10,ack=89

SYN handshake completed, ad=6
connected to 171.64.15.100 at port 34669     <--- CORRECT IP ADDRESS HERE
<--- 220 elaine15.Stanford.EDU FTP server (Version 2.0WU(136) Thu Sep 19 
14:45:18 PDT 2002) ready.send_packet: seq = 11, len = 95, #Xmit = 0



In summary, for some reason ftpd is not using the correct ip address 
when setting up the data connection (specifically for the /bin/ls 
command).  All output listed above is from debug_ftpd and suggests that 
it 1. has the correct ip address and 2. is not using the correct ip address.

Please advise on what I should do regarding this issue.

Thanks

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script attempts - I got hosed
Date: Sat, 8 Feb 2003 07:05:36 +0000 (UTC)
Lines: 42
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044687936 14023 171.64.15.66 (8 Feb 2003 07:05:36 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4428

Erik Damian Weathers  writes:

>I was trying to redirect the debug output to a file,
>and I thought the script wasn't working since the
>file wasn't getting updated in my local directory,
>so I killed it (ls -latr should have shown it as
>the latest file, but it didn't).

>That happened twice.

>Then I ran the script w/o redirecting the output,
>and it told me I had already used 2 attempts.
>But I got no output on those attempts.

>So I was able to perform only one test run.

>But the point is that unless we get a full run
>(list of 'OK', 'NOT OK'), the run should not count
>as an attempt.

>Either way I think some work needs to be done to
>make the scripts more user friendly, especially for
>people w/ 'fat fingers' like me.

>I'd also like a definitive answer on when the 3 attempts
>starts ticking.  Is it 24 hours before the deadline, e.g.,
>Thursday @ 5PM, as the website says?
>Or is it at Friday 12AM, as the script implies:
>   Daily quota of 3 test attempts applies (from Feb 7 onwards)?

>thanks,

>- Erik

Making the front-end more user-friendly is definitely something I'll look
at doing.  The scripts were rewritten for this year to improve stability and
robustness, which I think was successful, but they could probably use an
FAQ for public consumption.  For future reference, you'd probably be
better using something like script or better, tee, to save the results
to a file.

The three attempts begin at midnight.
.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script attempts - I got hosed
Date: Sat, 8 Feb 2003 07:06:44 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044688004 14084 171.64.15.66 (8 Feb 2003 07:06:44 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4429

Jichun Zhu  writes:

>I think I lost a precious test run as well, but for different reason. The
>script didn't work, Matthew was sitting next to me at Sweethall when it
>happened, and he explained it was a bug in the script, and we just needed
>to rerun the test.

>After he left, I found out that the previous failed test run was counted
>towards my quota. But it was too late.

Not exactly--the failed run counted, but then you could rerun it immediately
after (as you wanted to do), with that second run not counting.  So the
net effect was the same as just using one run.

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 2.C issue
Date: Sat, 8 Feb 2003 07:09:46 +0000 (UTC)
Lines: 58
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044688186 14147 171.64.15.66 (8 Feb 2003 07:09:46 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4430


>When debug_ftpd attempts to open a data connection.  I show the 
>following output:

Are you using ftpd/our.ftpcopy on the same machine?  I made a note about
this in the Makefile, but it isn't mentioned in the assignment (since
I plan to fix this); the pair works only when running on the same machine.


>### using port number 64425 for data connection###
><--- 150 Opening ASCII mode data connection for /bin/ls.
>####Initiating a new connection now to 0.0.0.0:34670#### (sockfd=7)


>The control connection works just fine, it's only when debug_ftpd 
>attempts to setup the data connection to send the /bin/ls result to 
>our.ftpcopy (running over my stcp).  Further output from debug_ftpd 
>suggest that the issue is with the 0.0.0.0 ip address, since it gets a 
>network_recv error later on:

>child:pid=16571, sd=7, ad=9
>send_syn:seq=6,ack=0
>child (pid#16571): inside control_loop:sock_io#7, appl_io#9
>pid#16571: error on network_recv: got -1 bytes, errno=146
>pid#16571: transport_sock_io: network_recv() error!
>: Connection refused


>I know debug_ftpd has the ip of the machine running the our.ftpcopy, 
>based on the following ouput from debug_ftpd (corresponding to the 
>output during ftp control connection setup):
>elaine15:~> /afs/ir/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/debug_ftpd
>ftpd wrapper running on 

>####Accepting a new connection now at port# 64421#### (sockfd=3)
>parent: ad=6, synd=8

>child:pid=16569, sd=3, ad=5
>child (pid#16569): inside control_loop:sock_io#3, appl_io#5
>transport_sock_io: received a SYN packet with seq=88, ack=0
>send_syn_ack:seq=10,ack=89

>SYN handshake completed, ad=6
>connected to 171.64.15.100 at port 34669     <--- CORRECT IP ADDRESS HERE
><--- 220 elaine15.Stanford.EDU FTP server (Version 2.0WU(136) Thu Sep 19 
>14:45:18 PDT 2002) ready.send_packet: seq = 11, len = 95, #Xmit = 0



>In summary, for some reason ftpd is not using the correct ip address 
>when setting up the data connection (specifically for the /bin/ls 
>command).  All output listed above is from debug_ftpd and suggests that 
>it 1. has the correct ip address and 2. is not using the correct ip address.

>Please advise on what I should do regarding this issue.

>Thanks

.

Path: shelby.stanford.edu!elaine1.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Object files for milestone hw2c
Date: Sat, 8 Feb 2003 07:18:08 +0000 (UTC)
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine1.stanford.edu
X-Trace: news.Stanford.EDU 1044688688 14351 171.64.15.66 (8 Feb 2003 07:18:08 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4431


>I'm a bit confused about the object files for milestone C that we can use.
>It seems that main.o and helper.o are missing from the provided directory
>on the assignment so we really cannot test our transport implementation
>with your solution to assignment #1.

These have been replaced by libftpcopy.a, which is referenced in the
Makefile in the hw2 src directory.  (Please ignore the old Makefile in the
hw1obj subdir; I think this confused some people).

>If you provide all the objects to create a working ftpclient and we link
>it with our transport implementation and that turns out to work OK for us
>we don't have to provide our changed implementation to assignment 1.

Correct.  This should be no more than a matter of typing 'make' (at least,
it is for me).  When testing, keep in mind that the provided ftpd/ftpcopy
pair work together on the same machine only.

>In this case why do we need to submit libftpcopy.a? this is one of the
>files that you provide.

You don't need to submit this; the provided Makefile links against the
copy in the class directory.

>I might be asking the obvious but the assigment deliverables for this
>milestone seem a bit confusing to me.

If you use the provided libraries, you'll submit basically *.c *.h Makefile
from whatever directory in which you did gethw2.  (This applies for
running the test script, also).  If you use your ftpcopy, you'll include
additionally your ftpcopy sources and your appropriately modified Makefile
(should just be a matter of changing one line in the provided Makefile).

The grading script cares only about the stcp_ftp rule (and corresponding
prerequisites, obviously).
.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: 2.C issue
Date: Sat, 8 Feb 2003 00:06:09 -0800
Lines: 128
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044691570 15686 171.64.15.70 (8 Feb 2003 08:06:10 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4432

It seems I'm running into a similar problem:
The control connection is established correctly but when the ftpcopy
client sends the LIST command the data connection will fail.
I'm using the same machine: elaine5

debug_ftpd output is
--------------------------------------------------
Inside retrieve:cmd=/bin/ls -lgA %s, name=

### using port number 58622 for data connection###
<--- 150 Opening ASCII mode data connection for /bin/ls.
####Initiating a new connection now to 0.0.0.0:58621#### (sockfd=7)
send_packet: seq = 297, len = 53, #Xmit = 0
parent: ad=10, synd=12

child:pid=2286, sd=7, ad=9
send_syn:seq=0,ack=0
child (pid#2286): inside control_loop:sock_io#7, appl_io#9
sock_io: (pid#2282) received an ACK packet, ack = 350
transport_sock_io: received a SYN_ACK packet with seq=208, ack=1
child (pid#2286): writing peer_name of length 16 bytes

SYN handshake completed, ad=10
myconnect: mismatch in peer names
send_fin:
appl_io: connection close requested, state = FINACK_WAIT
<--- transport_sock_io: received a FIN_ACK packet
425 child (pid#2286):exiting...
Can't build data connection: Bad file number.<--- 226 Transfer
complete.send_packet: seq = 350, len = 394, #Xmit = 0
sock_io: (pid#2282) received an ACK packet, ack = 744
sock_io: (pid#2282) receive a data packet, seq = 299, len = 6
send_ack: ACK = 305
sock_io: received a FIN packet
send_fin_ack:
child (pid#2282):exiting...
retrieve(): closed socket after sending data
<--- 221 You could at least say
goodbye.elaine5:~/class/cs244a/hw2/hw2c_tests/serverdir>

-----------------------------------------------



and the ftpcopy output is
-------------------------------------
elaine5.Stanford.EDU:63633

DEBUG:remote_dir=.

DEBUG: reached level 0
elaine5.Stanford.EDU:58621

####Accepting a new connection now at port# 58621#### (sockfd=3)
child:comm_sd=3, data_sd=6

SYN handshake completed, data_sd=8
ERROR: 425 Can't build data connection: Bad file number. (-2)
------------------------------------------------


Any ideas?

Rafa


On Sat, 8 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >When debug_ftpd attempts to open a data connection.  I show the
> >following output:
>
> Are you using ftpd/our.ftpcopy on the same machine?  I made a note about
> this in the Makefile, but it isn't mentioned in the assignment (since
> I plan to fix this); the pair works only when running on the same machine.
>
>
> >### using port number 64425 for data connection###
> ><--- 150 Opening ASCII mode data connection for /bin/ls.
> >####Initiating a new connection now to 0.0.0.0:34670#### (sockfd=7)
>
>
> >The control connection works just fine, it's only when debug_ftpd
> >attempts to setup the data connection to send the /bin/ls result to
> >our.ftpcopy (running over my stcp).  Further output from debug_ftpd
> >suggest that the issue is with the 0.0.0.0 ip address, since it gets a
> >network_recv error later on:
>
> >child:pid=16571, sd=7, ad=9
> >send_syn:seq=6,ack=0
> >child (pid#16571): inside control_loop:sock_io#7, appl_io#9
> >pid#16571: error on network_recv: got -1 bytes, errno=146
> >pid#16571: transport_sock_io: network_recv() error!
> >: Connection refused
>
>
> >I know debug_ftpd has the ip of the machine running the our.ftpcopy,
> >based on the following ouput from debug_ftpd (corresponding to the
> >output during ftp control connection setup):
> >elaine15:~> /afs/ir/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/debug_ftpd
> >ftpd wrapper running on 
>
> >####Accepting a new connection now at port# 64421#### (sockfd=3)
> >parent: ad=6, synd=8
>
> >child:pid=16569, sd=3, ad=5
> >child (pid#16569): inside control_loop:sock_io#3, appl_io#5
> >transport_sock_io: received a SYN packet with seq=88, ack=0
> >send_syn_ack:seq=10,ack=89
>
> >SYN handshake completed, ad=6
> >connected to 171.64.15.100 at port 34669     <--- CORRECT IP ADDRESS HERE
> ><--- 220 elaine15.Stanford.EDU FTP server (Version 2.0WU(136) Thu Sep 19
> >14:45:18 PDT 2002) ready.send_packet: seq = 11, len = 95, #Xmit = 0
>
>
>
> >In summary, for some reason ftpd is not using the correct ip address
> >when setting up the data connection (specifically for the /bin/ls
> >command).  All output listed above is from debug_ftpd and suggests that
> >it 1. has the correct ip address and 2. is not using the correct ip address.
>
> >Please advise on what I should do regarding this issue.
>
> >Thanks
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: Re: 2.C issue
Date: Sat, 08 Feb 2003 00:25:50 -0800
Lines: 135
Distribution: su
Message-ID: 
References:   
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044692752 16711 127.0.0.1 (8 Feb 2003 08:25:52 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4433

Matt's suggestion seemed to solve the ip adress issue.


Rafael M Hernandez wrote:
> It seems I'm running into a similar problem:
> The control connection is established correctly but when the ftpcopy
> client sends the LIST command the data connection will fail.
> I'm using the same machine: elaine5
> 
> debug_ftpd output is
> --------------------------------------------------
> Inside retrieve:cmd=/bin/ls -lgA %s, name=
> 
> ### using port number 58622 for data connection###
> <--- 150 Opening ASCII mode data connection for /bin/ls.
> ####Initiating a new connection now to 0.0.0.0:58621#### (sockfd=7)
> send_packet: seq = 297, len = 53, #Xmit = 0
> parent: ad=10, synd=12
> 
> child:pid=2286, sd=7, ad=9
> send_syn:seq=0,ack=0
> child (pid#2286): inside control_loop:sock_io#7, appl_io#9
> sock_io: (pid#2282) received an ACK packet, ack = 350
> transport_sock_io: received a SYN_ACK packet with seq=208, ack=1
> child (pid#2286): writing peer_name of length 16 bytes
> 
> SYN handshake completed, ad=10
> myconnect: mismatch in peer names
> send_fin:
> appl_io: connection close requested, state = FINACK_WAIT
> <--- transport_sock_io: received a FIN_ACK packet
> 425 child (pid#2286):exiting...
> Can't build data connection: Bad file number.<--- 226 Transfer
> complete.send_packet: seq = 350, len = 394, #Xmit = 0
> sock_io: (pid#2282) received an ACK packet, ack = 744
> sock_io: (pid#2282) receive a data packet, seq = 299, len = 6
> send_ack: ACK = 305
> sock_io: received a FIN packet
> send_fin_ack:
> child (pid#2282):exiting...
> retrieve(): closed socket after sending data
> <--- 221 You could at least say
> goodbye.elaine5:~/class/cs244a/hw2/hw2c_tests/serverdir>
> 
> -----------------------------------------------
> 
> 
> 
> and the ftpcopy output is
> -------------------------------------
> elaine5.Stanford.EDU:63633
> 
> DEBUG:remote_dir=.
> 
> DEBUG: reached level 0
> elaine5.Stanford.EDU:58621
> 
> ####Accepting a new connection now at port# 58621#### (sockfd=3)
> child:comm_sd=3, data_sd=6
> 
> SYN handshake completed, data_sd=8
> ERROR: 425 Can't build data connection: Bad file number. (-2)
> ------------------------------------------------
> 
> 
> Any ideas?
> 
> Rafa
> 
> 
> On Sat, 8 Feb 2003, Matthew Jonathan Holliman wrote:
> 
> 
>>>When debug_ftpd attempts to open a data connection.  I show the
>>>following output:
>>
>>Are you using ftpd/our.ftpcopy on the same machine?  I made a note about
>>this in the Makefile, but it isn't mentioned in the assignment (since
>>I plan to fix this); the pair works only when running on the same machine.
>>
>>
>>
>>>### using port number 64425 for data connection###
>>><--- 150 Opening ASCII mode data connection for /bin/ls.
>>>####Initiating a new connection now to 0.0.0.0:34670#### (sockfd=7)
>>
>>
>>>The control connection works just fine, it's only when debug_ftpd
>>>attempts to setup the data connection to send the /bin/ls result to
>>>our.ftpcopy (running over my stcp).  Further output from debug_ftpd
>>>suggest that the issue is with the 0.0.0.0 ip address, since it gets a
>>>network_recv error later on:
>>
>>>child:pid=16571, sd=7, ad=9
>>>send_syn:seq=6,ack=0
>>>child (pid#16571): inside control_loop:sock_io#7, appl_io#9
>>>pid#16571: error on network_recv: got -1 bytes, errno=146
>>>pid#16571: transport_sock_io: network_recv() error!
>>>: Connection refused
>>
>>
>>>I know debug_ftpd has the ip of the machine running the our.ftpcopy,
>>>based on the following ouput from debug_ftpd (corresponding to the
>>>output during ftp control connection setup):
>>>elaine15:~> /afs/ir/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/debug_ftpd
>>>ftpd wrapper running on 
>>
>>>####Accepting a new connection now at port# 64421#### (sockfd=3)
>>>parent: ad=6, synd=8
>>
>>>child:pid=16569, sd=3, ad=5
>>>child (pid#16569): inside control_loop:sock_io#3, appl_io#5
>>>transport_sock_io: received a SYN packet with seq=88, ack=0
>>>send_syn_ack:seq=10,ack=89
>>
>>>SYN handshake completed, ad=6
>>>connected to 171.64.15.100 at port 34669     <--- CORRECT IP ADDRESS HERE
>>><--- 220 elaine15.Stanford.EDU FTP server (Version 2.0WU(136) Thu Sep 19
>>>14:45:18 PDT 2002) ready.send_packet: seq = 11, len = 95, #Xmit = 0
>>
>>
>>
>>>In summary, for some reason ftpd is not using the correct ip address
>>>when setting up the data connection (specifically for the /bin/ls
>>>command).  All output listed above is from debug_ftpd and suggests that
>>>it 1. has the correct ip address and 2. is not using the correct ip address.
>>
>>>Please advise on what I should do regarding this issue.
>>
>>>Thanks
>>
>>
> 


.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Only 3 tests allowed today?
Date: Sat, 8 Feb 2003 02:03:11 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine39.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044698592 19211 171.64.15.114 (8 Feb 2003 10:03:12 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4434

It is Saturday now. I can't run the 4th test on hw2b. Could anyone please
fix it or is it supposed to be so?

Jichun

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: HW2.C confusion
Date: Sat, 8 Feb 2003 02:25:53 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044699873 20549 128.12.195.69 (8 Feb 2003 10:24:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4435

Couple of questions:

1) After the initial run of the test script for part C, my transport.c (the
same file I submitted for part B without any changes) passed all the tests,
does it mean there is nothing for me to do coding wise for part C? I am
taking the alternative route that does not require us to modify our
ftpcopy.c from hw1.

2) So for submission to part C, do we submit only transport.c and Makefile?
transport.c is the same file I submitted for part B, and Makefile I got from
the class hw2 src directory.

There is confusion as I cannot think of anything I need to do for part C.

-myl


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: HW2.C confusion - One more question
Date: Sat, 8 Feb 2003 02:33:31 -0800
Lines: 38
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044700331 20791 128.12.195.69 (8 Feb 2003 10:32:11 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4436

For some reason the test script does not know how to build the target
stcp_ftp unless I also submit mysock.h/.c network.h/.c and transport.h. I
have to run the test script like this:

/afs/ir/class/cs244a/bin/test_code.pl hw2c transport.c Makefile network.h
transport.h mysock.h network.c mysock.c

This is different from part A and B where I only supplied transport.c
Do you see any problem with this? Somehow I was worried that the test script
may not be doing the test properly.



"Man Yu Lui"  wrote in message

> Couple of questions:
>
> 1) After the initial run of the test script for part C, my transport.c
(the
> same file I submitted for part B without any changes) passed all the
tests,
> does it mean there is nothing for me to do coding wise for part C? I am
> taking the alternative route that does not require us to modify our
> ftpcopy.c from hw1.
>
> 2) So for submission to part C, do we submit only transport.c and
Makefile?
> transport.c is the same file I submitted for part B, and Makefile I got
from
> the class hw2 src directory.
>
> There is confusion as I cannot think of anything I need to do for part C.
>
> -myl
>
>


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Only 3 tests allowed today?
Date: Sat, 8 Feb 2003 18:29:19 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1044728959 2777 171.64.15.115 (8 Feb 2003 18:29:19 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4437


>It is Saturday now. I can't run the 4th test on hw2b. Could anyone please
>fix it or is it supposed to be so?

I have to change this manually, and just did so.

.

Path: shelby.stanford.edu!elaine14.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: libftpcopy.a issue
Date: Sat, 8 Feb 2003 10:59:47 -0800
Lines: 25
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine14.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044730789 3542 171.64.15.79 (8 Feb 2003 18:59:49 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4438

I first tested my transport.c with hw2c, and everything came out OK.
However,  once I received:


----------------------------------------------------------------------

Test I [out of 0.5]
Checks that ftpcopy matches required UI specification.

Results:  NOT OK (passed only 0 out of 1 subtests)

Program output (localhost, expected "OK: 76255 bytes copied":


----------------------------------------------------------------------

I tried repeating the test over and over, and have not seen it again.
Not sure what to make of it.


TAs?  Any ideas?

No other tests fail.


.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: 2.C issue
Date: Sat, 8 Feb 2003 19:15:00 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine13.stanford.edu
X-Trace: news.Stanford.EDU 1044731700 3902 171.64.15.78 (8 Feb 2003 19:15:00 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4439

For some reason, it seems like an old version of the reference transport
layer was being used in libmysock.a.  I've rebuilt everything, and things
seem to be okay now.

.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: HW2.C confusion
Date: Sat, 8 Feb 2003 19:19:25 +0000 (UTC)
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine13.stanford.edu
X-Trace: news.Stanford.EDU 1044731965 3996 171.64.15.78 (8 Feb 2003 19:19:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4440


>1) After the initial run of the test script for part C, my transport.c (the
>same file I submitted for part B without any changes) passed all the tests,
>does it mean there is nothing for me to do coding wise for part C? I am
>taking the alternative route that does not require us to modify our
>ftpcopy.c from hw1.

Correct.

>2) So for submission to part C, do we submit only transport.c and Makefile?
>transport.c is the same file I submitted for part B, and Makefile I got from
>the class hw2 src directory.

No, please submit everything you need to build, i.e. include network.c,
mysock.c, network.h, Makefile, etc.  The script for this part just does
a regular make on your Makefile, so if you're missing those files the
build will fail.

>There is confusion as I cannot think of anything I need to do for part C.

No, there's really not much to it now.

.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: HW2.C confusion - One more question
Date: Sat, 8 Feb 2003 19:21:25 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine13.stanford.edu
X-Trace: news.Stanford.EDU 1044732085 4084 171.64.15.78 (8 Feb 2003 19:21:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4441

"Man Yu Lui"  writes:

>For some reason the test script does not know how to build the target
>stcp_ftp unless I also submit mysock.h/.c network.h/.c and transport.h. I
>have to run the test script like this:

>/afs/ir/class/cs244a/bin/test_code.pl hw2c transport.c Makefile network.h
>transport.h mysock.h network.c mysock.c

>This is different from part A and B where I only supplied transport.c
>Do you see any problem with this? Somehow I was worried that the test script
>may not be doing the test properly.

No, this is correct, and I should probably clarify this.

For parts A and B, we used our own Makefile for grading, which can point to
whatever header/object files we need (including different versions of the
network layer, for instance); for part C, we cannot do this (in case people
used their own ftpcopy).  Since the Makefile is pretty arbitrary, we require
that people submit all files needed for compilation.

.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: libftpcopy.a issue
Date: Sat, 8 Feb 2003 19:22:20 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine13.stanford.edu
X-Trace: news.Stanford.EDU 1044732140 4095 171.64.15.78 (8 Feb 2003 19:22:20 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4442



>Test I [out of 0.5]
>Checks that ftpcopy matches required UI specification.

>Results:  NOT OK (passed only 0 out of 1 subtests)
>Program output (localhost, expected "OK: 76255 bytes copied":

>I tried repeating the test over and over, and have not seen it again.
>Not sure what to make of it.

I'm not either; I've never seen this before.

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: test script failing F.4 and G
Date: Sat, 8 Feb 2003 12:12:48 -0800
Lines: 65
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044735170 5318 171.64.15.70 (8 Feb 2003 20:12:50 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4443

Hi,
I'm running the tests with the ftpcopy created from your implementation
and I get the following results:

--------------------------------------------------------------------
Test F.4 [out of 1]
Checks that ftpcopy doesn't transfer a non-matching file.

Results:  NOT OK (passed only 0 out of 1 subtests)

Result of diff between your tree and expected tree (localhost)
("<" indicates extra files in your output):
2,8d1
< access.c
< acl.c
< authenticate.c
< conversions.c
< extensions.c
< ftpcmd.c
< ftpcount.c
10,12d2
< ftpshut.c
< glob.c
< logwtmp.c
14,15d3
< private.c
< realpath.c

----------------------------------------------------------------------

Test G [out of 1]
Checks that ftpcopy downloads files with correct cksum.

Results:  NOT OK (passed only 0 out of 1 subtests)

Result of diff between your results and expected results.
("<" indicates your output, ">" indicates expected output.
Second column is output of 'cksum', third column is file len):

1,7d0
< access.c 2285492818 19516
< acl.c 3259869479 4328
< authenticate.c 1255360678 1430
< conversions.c 3235545196 4695
< extensions.c 3207339500 22593
< ftpcmd.c 3450072137 66531
< ftpcount.c 3778330073 7163
9,11d1
< ftpshut.c 144060661 5984
< glob.c 500379658 11881
< logwtmp.c 584439432 3345
13,15c3
< private.c 2339550266 6974
< realpath.c 1135681922 3195
< vers.c 4281831640 67
---
> vers.c 916557779 68

----------------------------------------------------------------------


I was wondering what could be the reason of this mismatch, any ideas?
Thanks,
Rafa

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sat, 8 Feb 2003 20:44:08 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 80
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044737048 6237 171.64.15.112 (8 Feb 2003 20:44:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4444

Both tests are indicating that non-matching files are being
copied.

The second test indicates that file vers.c has been corrupted.
In particular, the length is wrong (is 67, should be 68).

File corruption could be at the root of the first problem
as well.

SteveJ

In article 
Rafael M Hernandez   wrote:
>Hi,
>I'm running the tests with the ftpcopy created from your implementation
>and I get the following results:
>
>--------------------------------------------------------------------
>Test F.4 [out of 1]
>Checks that ftpcopy doesn't transfer a non-matching file.
>
>Results:  NOT OK (passed only 0 out of 1 subtests)
>
>Result of diff between your tree and expected tree (localhost)
>("<" indicates extra files in your output):
>2,8d1
>< access.c
>< acl.c
>< authenticate.c
>< conversions.c
>< extensions.c
>< ftpcmd.c
>< ftpcount.c
>10,12d2
>< ftpshut.c
>< glob.c
>< logwtmp.c
>14,15d3
>< private.c
>< realpath.c
>
>----------------------------------------------------------------------
>
>Test G [out of 1]
>Checks that ftpcopy downloads files with correct cksum.
>
>Results:  NOT OK (passed only 0 out of 1 subtests)
>
>Result of diff between your results and expected results.
>("<" indicates your output, ">" indicates expected output.
>Second column is output of 'cksum', third column is file len):
>
>1,7d0
>< access.c 2285492818 19516
>< acl.c 3259869479 4328
>< authenticate.c 1255360678 1430
>< conversions.c 3235545196 4695
>< extensions.c 3207339500 22593
>< ftpcmd.c 3450072137 66531
>< ftpcount.c 3778330073 7163
>9,11d1
>< ftpshut.c 144060661 5984
>< glob.c 500379658 11881
>< logwtmp.c 584439432 3345
>13,15c3
>< private.c 2339550266 6974
>< realpath.c 1135681922 3195
>< vers.c 4281831640 67
>---
>> vers.c 916557779 68
>
>----------------------------------------------------------------------
>
>
>I was wondering what could be the reason of this mismatch, any ideas?
>Thanks,
>Rafa
>


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sat, 8 Feb 2003 12:57:55 -0800
Lines: 92
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044737876 6569 171.64.15.80 (8 Feb 2003 20:57:56 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4445

To corroborate,
	I am now getting that exact output as well.  With the exact same
output/checksums.  Since we presumably have completely different
implementations of the transport layer, could there be a possibility of
some issue with libftpcopy.a?



On Sat, 8 Feb 2003, Steve Jacobson wrote:

> Both tests are indicating that non-matching files are being
> copied.
>
> The second test indicates that file vers.c has been corrupted.
> In particular, the length is wrong (is 67, should be 68).
>
> File corruption could be at the root of the first problem
> as well.
>
> SteveJ
>
> In article 
> Rafael M Hernandez   wrote:
> >Hi,
> >I'm running the tests with the ftpcopy created from your implementation
> >and I get the following results:
> >
> >--------------------------------------------------------------------
> >Test F.4 [out of 1]
> >Checks that ftpcopy doesn't transfer a non-matching file.
> >
> >Results:  NOT OK (passed only 0 out of 1 subtests)
> >
> >Result of diff between your tree and expected tree (localhost)
> >("<" indicates extra files in your output):
> >2,8d1
> >< access.c
> >< acl.c
> >< authenticate.c
> >< conversions.c
> >< extensions.c
> >< ftpcmd.c
> >< ftpcount.c
> >10,12d2
> >< ftpshut.c
> >< glob.c
> >< logwtmp.c
> >14,15d3
> >< private.c
> >< realpath.c
> >
> >----------------------------------------------------------------------
> >
> >Test G [out of 1]
> >Checks that ftpcopy downloads files with correct cksum.
> >
> >Results:  NOT OK (passed only 0 out of 1 subtests)
> >
> >Result of diff between your results and expected results.
> >("<" indicates your output, ">" indicates expected output.
> >Second column is output of 'cksum', third column is file len):
> >
> >1,7d0
> >< access.c 2285492818 19516
> >< acl.c 3259869479 4328
> >< authenticate.c 1255360678 1430
> >< conversions.c 3235545196 4695
> >< extensions.c 3207339500 22593
> >< ftpcmd.c 3450072137 66531
> >< ftpcount.c 3778330073 7163
> >9,11d1
> >< ftpshut.c 144060661 5984
> >< glob.c 500379658 11881
> >< logwtmp.c 584439432 3345
> >13,15c3
> >< private.c 2339550266 6974
> >< realpath.c 1135681922 3195
> >< vers.c 4281831640 67
> >---
> >> vers.c 916557779 68
> >
> >----------------------------------------------------------------------
> >
> >
> >I was wondering what could be the reason of this mismatch, any ideas?
> >Thanks,
> >Rafa
> >
>
>
>

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: test quota and file order
Date: Sat, 8 Feb 2003 13:02:06 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044738128 6692 171.64.15.80 (8 Feb 2003 21:02:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4446

Hi,
I just noticed that if i run the test script with the exact same files in
a different order listing, i am required to use up one of my test runs.
when i put the old order in, it doesn't charge me.  is this a bug?



.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sat, 8 Feb 2003 21:39:38 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 106
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044740378 7617 171.64.15.112 (8 Feb 2003 21:39:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4447

Hmmm.

I did some poking around in the grading directories, and
found different vers.c files.  Some have length 67, and some
length 68.  It's possible that the testing script is pointing
to the wrong directory.  I will discuss this with our script
wizard.

SteveJ

In article 
Toliver Jue   wrote:
>To corroborate,
>	I am now getting that exact output as well.  With the exact same
>output/checksums.  Since we presumably have completely different
>implementations of the transport layer, could there be a possibility of
>some issue with libftpcopy.a?
>
>
>
>On Sat, 8 Feb 2003, Steve Jacobson wrote:
>
>> Both tests are indicating that non-matching files are being
>> copied.
>>
>> The second test indicates that file vers.c has been corrupted.
>> In particular, the length is wrong (is 67, should be 68).
>>
>> File corruption could be at the root of the first problem
>> as well.
>>
>> SteveJ
>>
>> In article 
>> Rafael M Hernandez   wrote:
>> >Hi,
>> >I'm running the tests with the ftpcopy created from your implementation
>> >and I get the following results:
>> >
>> >--------------------------------------------------------------------
>> >Test F.4 [out of 1]
>> >Checks that ftpcopy doesn't transfer a non-matching file.
>> >
>> >Results:  NOT OK (passed only 0 out of 1 subtests)
>> >
>> >Result of diff between your tree and expected tree (localhost)
>> >("<" indicates extra files in your output):
>> >2,8d1
>> >< access.c
>> >< acl.c
>> >< authenticate.c
>> >< conversions.c
>> >< extensions.c
>> >< ftpcmd.c
>> >< ftpcount.c
>> >10,12d2
>> >< ftpshut.c
>> >< glob.c
>> >< logwtmp.c
>> >14,15d3
>> >< private.c
>> >< realpath.c
>> >
>> >----------------------------------------------------------------------
>> >
>> >Test G [out of 1]
>> >Checks that ftpcopy downloads files with correct cksum.
>> >
>> >Results:  NOT OK (passed only 0 out of 1 subtests)
>> >
>> >Result of diff between your results and expected results.
>> >("<" indicates your output, ">" indicates expected output.
>> >Second column is output of 'cksum', third column is file len):
>> >
>> >1,7d0
>> >< access.c 2285492818 19516
>> >< acl.c 3259869479 4328
>> >< authenticate.c 1255360678 1430
>> >< conversions.c 3235545196 4695
>> >< extensions.c 3207339500 22593
>> >< ftpcmd.c 3450072137 66531
>> >< ftpcount.c 3778330073 7163
>> >9,11d1
>> >< ftpshut.c 144060661 5984
>> >< glob.c 500379658 11881
>> >< logwtmp.c 584439432 3345
>> >13,15c3
>> >< private.c 2339550266 6974
>> >< realpath.c 1135681922 3195
>> >< vers.c 4281831640 67
>> >---
>> >> vers.c 916557779 68
>> >
>> >----------------------------------------------------------------------
>> >
>> >
>> >I was wondering what could be the reason of this mismatch, any ideas?
>> >Thanks,
>> >Rafa
>> >
>>
>>
>>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: error in testscript?
Date: Sat, 8 Feb 2003 13:51:54 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1044741115 7961 128.12.22.55 (8 Feb 2003 21:51:55 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4448

When I try to submit something for testing, I get the following message:

Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN> line
1.
couldn't submit code for testing


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: test quota and file order
Date: Sat, 8 Feb 2003 21:52:12 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044741132 7967 171.64.15.112 (8 Feb 2003 21:52:12 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4449

Thanks for letting everyone know about this.

SteveJ

In article 
Toliver Jue   wrote:
>Hi,
>I just noticed that if i run the test script with the exact same files in
>a different order listing, i am required to use up one of my test runs.
>when i put the old order in, it doesn't charge me.  is this a bug?
>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Sat, 8 Feb 2003 14:26:36 -0800
Lines: 36
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1044743197 9112 128.12.85.0 (8 Feb 2003 22:26:37 GMT)
X-Complaints-To: 
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4450

Today I retested the code I submitted against the testing script, and
everything worked, so apparently this was an error on the other end. Do any
TAs have any clue why this might have happened?


"Rene Nahele Patnode"  wrote in message

> Unfortunately, I used up my last test, and things don't seem to be
> going well. On all of the tests that use testclient (D, E, F, and L),
> I get the following problem (everything else works perfectly):
>
> Starting student client: ./testclient  -p .server_port -f
> net_instruct_pkts_overlapping_lower_window foo
>
> Next timeout 0 seconds 1000 useconds
>
> Next timeout 0 seconds 77149 useconds
> warning:  client exited with non-zero status (256)
> program output:
>
> ####Initiating a new connection now to 171.64.15.79:37657#### (sockfd=4)
> myconnect: mismatch in peer names  ("0.0.0.0:37657" != "0.0.0.0:0")
> myconnect: mismatch in peer names  ("0.0.0.0:37657myconnect" != ":
> 0.0.0.0Bad file number:0
> ")
> myconnect: Bad file number
> Syn: Sequence Number: Error 0
> Init: Syn: Error 0
> recv: Error 0
>
> Why is testclient exiting with status 256?
>
> If anyone can help me really quickly, I would greatly appreciate it.
>


.

Path: shelby.stanford.edu!epic0.Stanford.EDU!mmahathi
From: Mahathi Sai Prasanna Mahabhashyam 
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sat, 8 Feb 2003 14:27:33 -0800
Lines: 115
Distribution: su
Message-ID: 
References: 
  
 
NNTP-Posting-Host: epic0.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044743261 9143 171.64.15.51 (8 Feb 2003 22:27:41 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4451

Hi,
   Just wanted to add that even I am getting the same output/checksum
problem with the test script. What could be the reason?

Mahathi.
On Sat, 8 Feb 2003, Steve Jacobson wrote:

> Hmmm.
>
> I did some poking around in the grading directories, and
> found different vers.c files.  Some have length 67, and some
> length 68.  It's possible that the testing script is pointing
> to the wrong directory.  I will discuss this with our script
> wizard.
>
> SteveJ
>
> In article 
> Toliver Jue   wrote:
> >To corroborate,
> >	I am now getting that exact output as well.  With the exact same
> >output/checksums.  Since we presumably have completely different
> >implementations of the transport layer, could there be a possibility of
> >some issue with libftpcopy.a?
> >
> >
> >
> >On Sat, 8 Feb 2003, Steve Jacobson wrote:
> >
> >> Both tests are indicating that non-matching files are being
> >> copied.
> >>
> >> The second test indicates that file vers.c has been corrupted.
> >> In particular, the length is wrong (is 67, should be 68).
> >>
> >> File corruption could be at the root of the first problem
> >> as well.
> >>
> >> SteveJ
> >>
> >> In article 
> >> Rafael M Hernandez   wrote:
> >> >Hi,
> >> >I'm running the tests with the ftpcopy created from your implementation
> >> >and I get the following results:
> >> >
> >> >--------------------------------------------------------------------
> >> >Test F.4 [out of 1]
> >> >Checks that ftpcopy doesn't transfer a non-matching file.
> >> >
> >> >Results:  NOT OK (passed only 0 out of 1 subtests)
> >> >
> >> >Result of diff between your tree and expected tree (localhost)
> >> >("<" indicates extra files in your output):
> >> >2,8d1
> >> >< access.c
> >> >< acl.c
> >> >< authenticate.c
> >> >< conversions.c
> >> >< extensions.c
> >> >< ftpcmd.c
> >> >< ftpcount.c
> >> >10,12d2
> >> >< ftpshut.c
> >> >< glob.c
> >> >< logwtmp.c
> >> >14,15d3
> >> >< private.c
> >> >< realpath.c
> >> >
> >> >----------------------------------------------------------------------
> >> >
> >> >Test G [out of 1]
> >> >Checks that ftpcopy downloads files with correct cksum.
> >> >
> >> >Results:  NOT OK (passed only 0 out of 1 subtests)
> >> >
> >> >Result of diff between your results and expected results.
> >> >("<" indicates your output, ">" indicates expected output.
> >> >Second column is output of 'cksum', third column is file len):
> >> >
> >> >1,7d0
> >> >< access.c 2285492818 19516
> >> >< acl.c 3259869479 4328
> >> >< authenticate.c 1255360678 1430
> >> >< conversions.c 3235545196 4695
> >> >< extensions.c 3207339500 22593
> >> >< ftpcmd.c 3450072137 66531
> >> >< ftpcount.c 3778330073 7163
> >> >9,11d1
> >> >< ftpshut.c 144060661 5984
> >> >< glob.c 500379658 11881
> >> >< logwtmp.c 584439432 3345
> >> >13,15c3
> >> >< private.c 2339550266 6974
> >> >< realpath.c 1135681922 3195
> >> >< vers.c 4281831640 67
> >> >---
> >> >> vers.c 916557779 68
> >> >
> >> >----------------------------------------------------------------------
> >> >
> >> >
> >> >I was wondering what could be the reason of this mismatch, any ideas?
> >> >Thanks,
> >> >Rafa
> >> >
> >>
> >>
> >>
> >
>
>
>

.

Path: shelby.stanford.edu!saga18.Stanford.EDU!priyank9
From: Priyank Kshitij Patel 
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sat, 8 Feb 2003 14:33:01 -0800
Lines: 154
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga18.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044743635 9293 171.64.15.148 (8 Feb 2003 22:33:55 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4452

Hi,
Surprisingly enough I am also having the exact same difference in
checksums for the tests F.4 and G.

My output is :

Test F.4 [out of 1]
Checks that ftpcopy doesn't transfer a non-matching file.

Results:  NOT OK (passed only 0 out of 1 subtests)

Result of diff between your tree and expected tree (localhost)
("<" indicates extra files in your output):
2,8d1
< access.c
< acl.c
< authenticate.c
< conversions.c
< extensions.c
< ftpcmd.c
< ftpcount.c
10,12d2
< ftpshut.c
< glob.c
< logwtmp.c
14,15d3
< private.c
< realpath.c

----------------------------------------------------------------------

Test G [out of 1]
Checks that ftpcopy downloads files with correct cksum.

Results:  NOT OK (passed only 0 out of 1 subtests)

Result of diff between your results and expected results.
("<" indicates your output, ">" indicates expected output.
Second column is output of 'cksum', third column is file len):

1,7d0
< access.c 2285492818 19516
< acl.c 3259869479 4328
< authenticate.c 1255360678 1430
< conversions.c 3235545196 4695
< extensions.c 3207339500 22593
< ftpcmd.c 3450072137 66531
< ftpcount.c 3778330073 7163
9,11d1
< ftpshut.c 144060661 5984
< glob.c 500379658 11881
< logwtmp.c 584439432 3345
13,15c3
< private.c 2339550266 6974
< realpath.c 1135681922 3195
< vers.c 4281831640 67
---
> vers.c 916557779 68

----------------------------------------------------------------------

Its surprising that the checksums of the apparently wrong files also
match... and that if the file vers.c is expected, then so should other .c
files..

Please note that all the test cases were passing for me in the morning,
after which i have made no change to my transport.c

Please clarify...

Priyank



On Sat, 8 Feb 2003, Rafael M Hernandez wrote:

> Hi,
> I'm running the tests with the ftpcopy created from your implementation
> and I get the following results:
>
> --------------------------------------------------------------------
> Test F.4 [out of 1]
> Checks that ftpcopy doesn't transfer a non-matching file.
>
> Results:  NOT OK (passed only 0 out of 1 subtests)
>
> Result of diff between your tree and expected tree (localhost)
> ("<" indicates extra files in your output):
> 2,8d1
> < access.c
> < acl.c
> < authenticate.c
> < conversions.c
> < extensions.c
> < ftpcmd.c
> < ftpcount.c
> 10,12d2
> < ftpshut.c
> < glob.c
> < logwtmp.c
> 14,15d3
> < private.c
> < realpath.c
>
> ----------------------------------------------------------------------
>
> Test G [out of 1]
> Checks that ftpcopy downloads files with correct cksum.
>
> Results:  NOT OK (passed only 0 out of 1 subtests)
>
> Result of diff between your results and expected results.
> ("<" indicates your output, ">" indicates expected output.
> Second column is output of 'cksum', third column is file len):
>
> 1,7d0
> < access.c 2285492818 19516
> < acl.c 3259869479 4328
> < authenticate.c 1255360678 1430
> < conversions.c 3235545196 4695
> < extensions.c 3207339500 22593
> < ftpcmd.c 3450072137 66531
> < ftpcount.c 3778330073 7163
> 9,11d1
> < ftpshut.c 144060661 5984
> < glob.c 500379658 11881
> < logwtmp.c 584439432 3345
> 13,15c3
> < private.c 2339550266 6974
> < realpath.c 1135681922 3195
> < vers.c 4281831640 67
> ---
> > vers.c 916557779 68
>
> ----------------------------------------------------------------------
>
>
> I was wondering what could be the reason of this mismatch, any ideas?
> Thanks,
> Rafa
>
>

q____________________________________________________________
Graduate Student		56F, Dudley Lane,
Computer Science Department	Escondido Village, Stanford,
Stanford University.		CA - 94305
				Phone : 1-650-497-7811

"When all men think alike, no one thinks very much."
-Walter Lippmann
____________________________________________________________


.

Path: shelby.stanford.edu!not-for-mail
From: "John C. Wu" 
Newsgroups: su.class.cs244a
Subject: Part C: Out of order packets on a different port.
Date: Sat, 8 Feb 2003 14:58:31 -0800
Lines: 26
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab400df5.stanford.edu
X-Trace: news.Stanford.EDU 1044745180 9887 171.64.13.245 (8 Feb 2003 22:59:40 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4453

Hi,

My part C doesn't seem to be working, and I think I've isolated the problem,
but I'm somewhat confused as to why it happens.

For each file downloaded, a new connection on a different port is
established, correct?

However, I am discovering that when I open a new connection on a different
port, packets from the previous connection on the previously used port are
still coming in?

Shouldn't the socket layer automatically know which packets are destined for
which ports? In my program, packets for all ports are getting passed the
same up to the transport layer.

I guess this leads into my next question of whether we are supposed to use
the tcp_hdr.th_sport and tcp_hdr.th_dport fields.

I'd appreciate any feedback!

Thanks!

John


.

Path: shelby.stanford.edu!saga7.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: some error in 2c
Date: Sat, 8 Feb 2003 15:04:18 -0800
Lines: 86
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044745462 9995 171.64.15.137 (8 Feb 2003 23:04:22 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4454

Hi,

I was passing my tests for Milestone 2B, so i neednt modify my transport.c
for testing the milestone C. I am using your object files. I am posting
the output which I am getting, please let me know what is happening.... as
I dont uderstand what is the error...
I am trying to get files with extension c up to depth 1.


server side
---------------------------------------------------------------------
saga7:~/cs244a/pa2/2c> ./ftpd
ftpd wrapper running on 
connected to 171.64.15.137 at port 45010
<--- 220 saga7.Stanford.EDU FTP server (Version 2.0WU(136) Sat Feb 8
10:43:23 PST 2003) ready.<--- 331 Guest login ok, send your complete
e-mail address as password.<--- 230 Guest login ok, access restrictions
apply.<--- 250 CWD command successful.<--- 200 Type set to A.<--- 200 PORT
command successful.
Inside retrieve:cmd=/bin/ls -lgA %s, name=

### using port number 45014 for data connection###
<--- 150 Opening ASCII mode data connection for /bin/ls.<--- 150 Opening
ASCII mode data connection for /bin/ls.<--- 226 Transfer
complete.retrieve(): closed socket after sending data
<--- 200 Type set to I.<--- 200 PORT command successful.
Inside retrieve:cmd=NULL, name=.test_key

### using port number 45016 for data connection###
<--- 150 Opening BINARY mode data connection for .test_key (16 bytes).<---
150 Opening BINARY mode data connection for .test_key (16 bytes).<--- 226
Transfer complete.retrieve(): closed socket after sending data
<--- 221 You could at least say goodbye.saga7:~/cs244a/pa2/2c>

------------------------------------------------------------------------


client side
-----------------------------------------------------------------------
saga7:~/cs244a/pa2/2c> ./ftpcopy -U c 1 



####Initiating a new connection now to 171.64.15.137:45007#### (sockfd=3)

SYN handshake completed, data_sd=7
====>network_send:dropping the packet
saga7.Stanford.EDU:53997

DEBUG:remote_dir=.

DEBUG: reached level 0
saga7.Stanford.EDU:45013

####Accepting a new connection now at port# 45013#### (sockfd=3)

SYN handshake completed, data_sd=8
====>network_send:dropping the packet
DEBUG: file/dir .test_key at level 0 (< 1)

DEBUG: trying to copy file .test_key to temp
saga7.Stanford.EDU:45015

####Accepting a new connection now at port# 45015#### (sockfd=3)
====>network_send:dropping the packet

SYN handshake completed, data_sd=8
====>network_send:keeping the packet in our queue
====>network_send:sending the packet stored in our queue

DEBUG: file .test_key does not match extension c
DEBUG: file/dir Makefile at level 0 (< 1)

DEBUG: trying to copy file Makefile to temp
saga7.Stanford.EDU:45017

DEBUG: network error with file/dir Makefile
ERROR: Connection reset by peer (-1)
Broken pipe

----------------------------------------------------------------------

can you tell me what is happening ???

Milap

.

Path: shelby.stanford.edu!not-for-mail
From: "Eric Ogren" 
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sat, 8 Feb 2003 15:29:45 -0800
Lines: 164
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: eogren.stanford.edu
X-Trace: news.Stanford.EDU 1044746985 10570 128.12.95.90 (8 Feb 2003 23:29:45 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4455

I'm also getting these errors, and I wasn't getting them yesterday (I ran
the script 3 times and all tests passed all 3 times then), so I suspect a
bug in the test script this time...

Eric

"Priyank Kshitij Patel"  wrote in message

> Hi,
> Surprisingly enough I am also having the exact same difference in
> checksums for the tests F.4 and G.
>
> My output is :
>
> Test F.4 [out of 1]
> Checks that ftpcopy doesn't transfer a non-matching file.
>
> Results:  NOT OK (passed only 0 out of 1 subtests)
>
> Result of diff between your tree and expected tree (localhost)
> ("<" indicates extra files in your output):
> 2,8d1
> < access.c
> < acl.c
> < authenticate.c
> < conversions.c
> < extensions.c
> < ftpcmd.c
> < ftpcount.c
> 10,12d2
> < ftpshut.c
> < glob.c
> < logwtmp.c
> 14,15d3
> < private.c
> < realpath.c
>
> ----------------------------------------------------------------------
>
> Test G [out of 1]
> Checks that ftpcopy downloads files with correct cksum.
>
> Results:  NOT OK (passed only 0 out of 1 subtests)
>
> Result of diff between your results and expected results.
> ("<" indicates your output, ">" indicates expected output.
> Second column is output of 'cksum', third column is file len):
>
> 1,7d0
> < access.c 2285492818 19516
> < acl.c 3259869479 4328
> < authenticate.c 1255360678 1430
> < conversions.c 3235545196 4695
> < extensions.c 3207339500 22593
> < ftpcmd.c 3450072137 66531
> < ftpcount.c 3778330073 7163
> 9,11d1
> < ftpshut.c 144060661 5984
> < glob.c 500379658 11881
> < logwtmp.c 584439432 3345
> 13,15c3
> < private.c 2339550266 6974
> < realpath.c 1135681922 3195
> < vers.c 4281831640 67
> ---
> > vers.c 916557779 68
>
> ----------------------------------------------------------------------
>
> Its surprising that the checksums of the apparently wrong files also
> match... and that if the file vers.c is expected, then so should other .c
> files..
>
> Please note that all the test cases were passing for me in the morning,
> after which i have made no change to my transport.c
>
> Please clarify...
>
> Priyank
>
>
>
> On Sat, 8 Feb 2003, Rafael M Hernandez wrote:
>
> > Hi,
> > I'm running the tests with the ftpcopy created from your implementation
> > and I get the following results:
> >
> > --------------------------------------------------------------------
> > Test F.4 [out of 1]
> > Checks that ftpcopy doesn't transfer a non-matching file.
> >
> > Results:  NOT OK (passed only 0 out of 1 subtests)
> >
> > Result of diff between your tree and expected tree (localhost)
> > ("<" indicates extra files in your output):
> > 2,8d1
> > < access.c
> > < acl.c
> > < authenticate.c
> > < conversions.c
> > < extensions.c
> > < ftpcmd.c
> > < ftpcount.c
> > 10,12d2
> > < ftpshut.c
> > < glob.c
> > < logwtmp.c
> > 14,15d3
> > < private.c
> > < realpath.c
> >
> > ----------------------------------------------------------------------
> >
> > Test G [out of 1]
> > Checks that ftpcopy downloads files with correct cksum.
> >
> > Results:  NOT OK (passed only 0 out of 1 subtests)
> >
> > Result of diff between your results and expected results.
> > ("<" indicates your output, ">" indicates expected output.
> > Second column is output of 'cksum', third column is file len):
> >
> > 1,7d0
> > < access.c 2285492818 19516
> > < acl.c 3259869479 4328
> > < authenticate.c 1255360678 1430
> > < conversions.c 3235545196 4695
> > < extensions.c 3207339500 22593
> > < ftpcmd.c 3450072137 66531
> > < ftpcount.c 3778330073 7163
> > 9,11d1
> > < ftpshut.c 144060661 5984
> > < glob.c 500379658 11881
> > < logwtmp.c 584439432 3345
> > 13,15c3
> > < private.c 2339550266 6974
> > < realpath.c 1135681922 3195
> > < vers.c 4281831640 67
> > ---
> > > vers.c 916557779 68
> >
> > ----------------------------------------------------------------------
> >
> >
> > I was wondering what could be the reason of this mismatch, any ideas?
> > Thanks,
> > Rafa
> >
> >
>
> q____________________________________________________________
> Graduate Student 56F, Dudley Lane,
> Computer Science Department Escondido Village, Stanford,
> Stanford University. CA - 94305
> Phone : 1-650-497-7811
>
> "When all men think alike, no one thinks very much."
> -Walter Lippmann
> ____________________________________________________________
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Sun, 9 Feb 2003 04:37:26 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 11
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044765446 19826 171.64.15.112 (9 Feb 2003 04:37:26 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4456

This may be a result of the lingering zombie processes which
were reported in an earlier post.

SteveJ

In article 
Rene Patnode  wrote:
>Today I retested the code I submitted against the testing script, and
>everything worked, so apparently this was an error on the other end. Do any
>TAs have any clue why this might have happened?
>
.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test quota and file order
Date: Sun, 9 Feb 2003 06:54:31 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1044773671 23102 171.64.15.80 (9 Feb 2003 06:54:32 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4457


>I just noticed that if i run the test script with the exact same files in
>a different order listing, i am required to use up one of my test runs.
>when i put the old order in, it doesn't charge me.  is this a bug?

I wouldn't say so, because this is the expected behaviour; the script computes
the key just by hashing the input files, so if you randomly permute these,
you'll get a different key.  (I would agree that this is probably one of the
UI issues that should be cleaned up).

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: error in testscript?
Date: Sun, 9 Feb 2003 06:56:17 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1044773777 23125 171.64.15.80 (9 Feb 2003 06:56:17 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4458


>When I try to submit something for testing, I get the following message:

>Usage: TestKey::check_key(s) at StudentTestManager.pm line 108, <STDIN> line
>1.
>couldn't submit code for testing

When this happens, you can just rerun the script and it seems to work.
(As long as you don't change your code, you don't lose a test run).

I have no idea what causes this yet.
.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sun, 9 Feb 2003 06:59:52 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1044773992 23222 171.64.15.80 (9 Feb 2003 06:59:52 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4459

Sorry about that--
When I fixed the broken ftpd/debug_ftpd, I copied the updated source
directory back into the public WWW directory.

As you might guess, this directory also doubled as the tree from which
we download for grading in part C... it didn't occur to me that we were
doing this (or that any source files would have changed, for that matter).

I've created an updated version of the reference tree against which the
ftpcopy output is checked, so you should now pass all the tests again.
.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!kushcu
From: Ozgun Ali Erdogan 
Newsgroups: su.class.cs244a
Subject: Re: SYN-ACK sequence problems?
Date: Sat, 8 Feb 2003 23:07:55 -0800
Lines: 63
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044774476 23431 171.64.15.78 (9 Feb 2003 07:07:56 GMT)
X-Complaints-To: 
To: Russell Greene 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4460


OK, here's what I've been trying to figure out for some time though. What
if the SYN-ACK  packet gets dropped? Then one of the sides will be in
CESTABLISHED state, and will start to send data, and the other side, will
be in STCP_SYN_SENT state waiting for its SYN-ACK. if you run server and
client with -U flag, that indeed happens from time to time.

How are we supposed to take care of that?

Ozgun.


On Fri, 7 Feb 2003, Russell Greene wrote:

> Page 381 of the text has the TCP state-transition diagram.  Now, the TCP we
> are implementing has a slightly different state diagram, but the important
> thing to note is that the operation of TCP changes based on the state it is
> in.
>
> Once the server has received a SYN packet and responds with a SYN-ACK it
> moves to the established state (since we have a two way handshake).  Once
> the server is in the established state, it does not respond to future SYN
> packets.
>
> --Russ
>
> "Kevin Christopher"  wrote in message
> 
> > In my last test before submitting, I managed to fail 2.G (SYN is ACKed
> > properly).  I didn't fail it before, but here's what I'm pretty sure
> > happened:
> >
> > 2 SYN packets sent by active end (i.e. network delays one)
> > passive end receives 1st SYN
> > passive end responds with correct SYN-ACK
> > (some data exchanged, moving the windows)
> > passive end receives 2nd SYN
> > * passive end responds with 2nd SYN-ACK
> >
> > (with the * on the problematic step)
> >
> > I've got my code set up so that ALL ACK packets have th_ack set to the
> > sequence number at the base of my current receive window.  I also send
> > exactly the same initial sequence correctly.
> >
> > But, it seems that once some data is exchanged, the th_ack field is set
> > to a value higher than the active end expects.  That is, the active end
> > seems to expect SYN-ACK.th_ack to be at the initial base of the receive
> > window (as they sent in the original SYN packet), while I'm sending back
> > the current base of the receive window in the second SYN-ACK - that is,
> > my ACK specifies the next byte I expect.  A little confusing, but what
> > is the correct behavior?
> >
> > I'd like to think this wouldn't be a problem, because since data is (I'm
> > mostly sure) already exchanged the active end MUST have already received
> > a SYN-ACK once, and so my extra SYN-ACK is redundant (in fact, my active
> > end simply drops redundant SYN-ACKs) - but the spec says to ACK every
> > packet.
> >
>
>
>

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: SYN-ACK sequence problems?
Date: Sun, 9 Feb 2003 09:16:53 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 80
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044782213 27423 171.64.15.112 (9 Feb 2003 09:16:53 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4461

The two-way SYN/SYN-ACK handshake is less robust than the three
way handshake in TCP, so you have to consider the possibilities
and handle them.

From last year's newsgroup:

    If you are passive and in ESTABLISHED state you do have to deal
    with the possibility that your SYN/ACK did not o through and you
    have to retransmit it if you get another SYN.

SteveJ


In article 
Ozgun Ali Erdogan   wrote:
>
>OK, here's what I've been trying to figure out for some time though. What
>if the SYN-ACK  packet gets dropped? Then one of the sides will be in
>CESTABLISHED state, and will start to send data, and the other side, will
>be in STCP_SYN_SENT state waiting for its SYN-ACK. if you run server and
>client with -U flag, that indeed happens from time to time.
>
>How are we supposed to take care of that?
>
>Ozgun.
>
>
>On Fri, 7 Feb 2003, Russell Greene wrote:
>
>> Page 381 of the text has the TCP state-transition diagram.  Now, the TCP we
>> are implementing has a slightly different state diagram, but the important
>> thing to note is that the operation of TCP changes based on the state it is
>> in.
>>
>> Once the server has received a SYN packet and responds with a SYN-ACK it
>> moves to the established state (since we have a two way handshake).  Once
>> the server is in the established state, it does not respond to future SYN
>> packets.
>>
>> --Russ
>>
>> "Kevin Christopher"  wrote in message
>> 
>> > In my last test before submitting, I managed to fail 2.G (SYN is ACKed
>> > properly).  I didn't fail it before, but here's what I'm pretty sure
>> > happened:
>> >
>> > 2 SYN packets sent by active end (i.e. network delays one)
>> > passive end receives 1st SYN
>> > passive end responds with correct SYN-ACK
>> > (some data exchanged, moving the windows)
>> > passive end receives 2nd SYN
>> > * passive end responds with 2nd SYN-ACK
>> >
>> > (with the * on the problematic step)
>> >
>> > I've got my code set up so that ALL ACK packets have th_ack set to the
>> > sequence number at the base of my current receive window.  I also send
>> > exactly the same initial sequence correctly.
>> >
>> > But, it seems that once some data is exchanged, the th_ack field is set
>> > to a value higher than the active end expects.  That is, the active end
>> > seems to expect SYN-ACK.th_ack to be at the initial base of the receive
>> > window (as they sent in the original SYN packet), while I'm sending back
>> > the current base of the receive window in the second SYN-ACK - that is,
>> > my ACK specifies the next byte I expect.  A little confusing, but what
>> > is the correct behavior?
>> >
>> > I'd like to think this wouldn't be a problem, because since data is (I'm
>> > mostly sure) already exchanged the active end MUST have already received
>> > a SYN-ACK once, and so my extra SYN-ACK is redundant (in fact, my active
>> > end simply drops redundant SYN-ACKs) - but the spec says to ACK every
>> > packet.
>> >
>>
>>
>>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: test script failing F.4 and G
Date: Sun, 9 Feb 2003 09:19:30 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 122
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044782370 27447 171.64.15.112 (9 Feb 2003 09:19:30 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4462

Matthew resolved an issue with a testing directory late Saturday
night.  This problem should be fixed now.

In article 
Mahathi Sai Prasanna Mahabhashyam   wrote:
>Hi,
>   Just wanted to add that even I am getting the same output/checksum
>problem with the test script. What could be the reason?
>
>Mahathi.
>On Sat, 8 Feb 2003, Steve Jacobson wrote:
>
>> Hmmm.
>>
>> I did some poking around in the grading directories, and
>> found different vers.c files.  Some have length 67, and some
>> length 68.  It's possible that the testing script is pointing
>> to the wrong directory.  I will discuss this with our script
>> wizard.
>>
>> SteveJ
>>
>> In article 
>> Toliver Jue   wrote:
>> >To corroborate,
>> >	I am now getting that exact output as well.  With the exact same
>> >output/checksums.  Since we presumably have completely different
>> >implementations of the transport layer, could there be a possibility of
>> >some issue with libftpcopy.a?
>> >
>> >
>> >
>> >On Sat, 8 Feb 2003, Steve Jacobson wrote:
>> >
>> >> Both tests are indicating that non-matching files are being
>> >> copied.
>> >>
>> >> The second test indicates that file vers.c has been corrupted.
>> >> In particular, the length is wrong (is 67, should be 68).
>> >>
>> >> File corruption could be at the root of the first problem
>> >> as well.
>> >>
>> >> SteveJ
>> >>
>> >> In article 
>> >> Rafael M Hernandez   wrote:
>> >> >Hi,
>> >> >I'm running the tests with the ftpcopy created from your implementation
>> >> >and I get the following results:
>> >> >
>> >> >--------------------------------------------------------------------
>> >> >Test F.4 [out of 1]
>> >> >Checks that ftpcopy doesn't transfer a non-matching file.
>> >> >
>> >> >Results:  NOT OK (passed only 0 out of 1 subtests)
>> >> >
>> >> >Result of diff between your tree and expected tree (localhost)
>> >> >("<" indicates extra files in your output):
>> >> >2,8d1
>> >> >< access.c
>> >> >< acl.c
>> >> >< authenticate.c
>> >> >< conversions.c
>> >> >< extensions.c
>> >> >< ftpcmd.c
>> >> >< ftpcount.c
>> >> >10,12d2
>> >> >< ftpshut.c
>> >> >< glob.c
>> >> >< logwtmp.c
>> >> >14,15d3
>> >> >< private.c
>> >> >< realpath.c
>> >> >
>> >> >----------------------------------------------------------------------
>> >> >
>> >> >Test G [out of 1]
>> >> >Checks that ftpcopy downloads files with correct cksum.
>> >> >
>> >> >Results:  NOT OK (passed only 0 out of 1 subtests)
>> >> >
>> >> >Result of diff between your results and expected results.
>> >> >("<" indicates your output, ">" indicates expected output.
>> >> >Second column is output of 'cksum', third column is file len):
>> >> >
>> >> >1,7d0
>> >> >< access.c 2285492818 19516
>> >> >< acl.c 3259869479 4328
>> >> >< authenticate.c 1255360678 1430
>> >> >< conversions.c 3235545196 4695
>> >> >< extensions.c 3207339500 22593
>> >> >< ftpcmd.c 3450072137 66531
>> >> >< ftpcount.c 3778330073 7163
>> >> >9,11d1
>> >> >< ftpshut.c 144060661 5984
>> >> >< glob.c 500379658 11881
>> >> >< logwtmp.c 584439432 3345
>> >> >13,15c3
>> >> >< private.c 2339550266 6974
>> >> >< realpath.c 1135681922 3195
>> >> >< vers.c 4281831640 67
>> >> >---
>> >> >> vers.c 916557779 68
>> >> >
>> >> >----------------------------------------------------------------------
>> >> >
>> >> >
>> >> >I was wondering what could be the reason of this mismatch, any ideas?
>> >> >Thanks,
>> >> >Rafa
>> >> >
>> >>
>> >>
>> >>
>> >
>>
>>
>>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Part C: Out of order packets on a different port.
Date: Sun, 9 Feb 2003 09:29:31 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 43
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044782971 27630 171.64.15.112 (9 Feb 2003 09:29:31 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4463

You are correct, new ports are used for each connection.  Old data
from the previous connection would not be received on the new port.

I'm not certain that unread data is flushed after the far end of the
socket pair is closed.  

If that's not it, you may want to bring your code by office hours.

You do not need to use the the stcp_hdr.th_sport and stcp_hdr.th_dport
fields.

SteveJ

In article 
John C. Wu  wrote:
>Hi,
>
>My part C doesn't seem to be working, and I think I've isolated the problem,
>but I'm somewhat confused as to why it happens.
>
>For each file downloaded, a new connection on a different port is
>established, correct?
>
>However, I am discovering that when I open a new connection on a different
>port, packets from the previous connection on the previously used port are
>still coming in?
>
>Shouldn't the socket layer automatically know which packets are destined for
>which ports? In my program, packets for all ports are getting passed the
>same up to the transport layer.
>
>I guess this leads into my next question of whether we are supposed to use
>the tcp_hdr.th_sport and tcp_hdr.th_dport fields.
>
>I'd appreciate any feedback!
>
>Thanks!
>
>John
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: some error in 2c
Date: Sun, 9 Feb 2003 09:33:34 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 95
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044783214 27716 171.64.15.112 (9 Feb 2003 09:33:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4464

It looks like the client is reading the socket pair after the
server has closed it.

SteveJ

In article 
Milap Chandrakant Shah   wrote:
>Hi,
>
>I was passing my tests for Milestone 2B, so i neednt modify my transport.c
>for testing the milestone C. I am using your object files. I am posting
>the output which I am getting, please let me know what is happening.... as
>I dont uderstand what is the error...
>I am trying to get files with extension c up to depth 1.
>
>
>server side
>---------------------------------------------------------------------
>saga7:~/cs244a/pa2/2c> ./ftpd
>ftpd wrapper running on 
>connected to 171.64.15.137 at port 45010
><--- 220 saga7.Stanford.EDU FTP server (Version 2.0WU(136) Sat Feb 8
>10:43:23 PST 2003) ready.<--- 331 Guest login ok, send your complete
>e-mail address as password.<--- 230 Guest login ok, access restrictions
>apply.<--- 250 CWD command successful.<--- 200 Type set to A.<--- 200 PORT
>command successful.
>Inside retrieve:cmd=/bin/ls -lgA %s, name=
>
>### using port number 45014 for data connection###
><--- 150 Opening ASCII mode data connection for /bin/ls.<--- 150 Opening
>ASCII mode data connection for /bin/ls.<--- 226 Transfer
>complete.retrieve(): closed socket after sending data
><--- 200 Type set to I.<--- 200 PORT command successful.
>Inside retrieve:cmd=NULL, name=.test_key
>
>### using port number 45016 for data connection###
><--- 150 Opening BINARY mode data connection for .test_key (16 bytes).<---
>150 Opening BINARY mode data connection for .test_key (16 bytes).<--- 226
>Transfer complete.retrieve(): closed socket after sending data
><--- 221 You could at least say goodbye.saga7:~/cs244a/pa2/2c>
>
>------------------------------------------------------------------------
>
>
>client side
>-----------------------------------------------------------------------
>saga7:~/cs244a/pa2/2c> ./ftpcopy -U c 1 
>

>
>####Initiating a new connection now to 171.64.15.137:45007#### (sockfd=3)
>
>SYN handshake completed, data_sd=7
>====>network_send:dropping the packet
>saga7.Stanford.EDU:53997
>
>DEBUG:remote_dir=.
>
>DEBUG: reached level 0
>saga7.Stanford.EDU:45013
>
>####Accepting a new connection now at port# 45013#### (sockfd=3)
>
>SYN handshake completed, data_sd=8
>====>network_send:dropping the packet
>DEBUG: file/dir .test_key at level 0 (< 1)
>
>DEBUG: trying to copy file .test_key to temp
>saga7.Stanford.EDU:45015
>
>####Accepting a new connection now at port# 45015#### (sockfd=3)
>====>network_send:dropping the packet
>
>SYN handshake completed, data_sd=8
>====>network_send:keeping the packet in our queue
>====>network_send:sending the packet stored in our queue
>
>DEBUG: file .test_key does not match extension c
>DEBUG: file/dir Makefile at level 0 (< 1)
>
>DEBUG: trying to copy file Makefile to temp
>saga7.Stanford.EDU:45017
>
>DEBUG: network error with file/dir Makefile
>ERROR: Connection reset by peer (-1)
>Broken pipe
>
>----------------------------------------------------------------------
>
>can you tell me what is happening ???
>
>Milap
>


.

Path: shelby.stanford.edu!saga7.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: Re: some error in 2c
Date: Sun, 9 Feb 2003 07:56:18 -0800
Lines: 111
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044806202 7207 171.64.15.137 (9 Feb 2003 15:56:42 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4465

Hi,

I also know that client is reading after server is reading from it. How do
you debug this thing, I dont know the interface, what do I need to check
? where can the problem lie?
I cant use my ftpcopy because I am using recv with MSG_PEEK, so I am using
your object files and I cant figure out whats going on?

PLease tell me what I can do....
Milap


On Sun, 9 Feb 2003, Steve Jacobson wrote:

> It looks like the client is reading the socket pair after the
> server has closed it.
>
> SteveJ
>
> In article 
> Milap Chandrakant Shah   wrote:
> >Hi,
> >
> >I was passing my tests for Milestone 2B, so i neednt modify my transport.c
> >for testing the milestone C. I am using your object files. I am posting
> >the output which I am getting, please let me know what is happening.... as
> >I dont uderstand what is the error...
> >I am trying to get files with extension c up to depth 1.
> >
> >
> >server side
> >---------------------------------------------------------------------
> >saga7:~/cs244a/pa2/2c> ./ftpd
> >ftpd wrapper running on 
> >connected to 171.64.15.137 at port 45010
> ><--- 220 saga7.Stanford.EDU FTP server (Version 2.0WU(136) Sat Feb 8
> >10:43:23 PST 2003) ready.<--- 331 Guest login ok, send your complete
> >e-mail address as password.<--- 230 Guest login ok, access restrictions
> >apply.<--- 250 CWD command successful.<--- 200 Type set to A.<--- 200 PORT
> >command successful.
> >Inside retrieve:cmd=/bin/ls -lgA %s, name=
> >
> >### using port number 45014 for data connection###
> ><--- 150 Opening ASCII mode data connection for /bin/ls.<--- 150 Opening
> >ASCII mode data connection for /bin/ls.<--- 226 Transfer
> >complete.retrieve(): closed socket after sending data
> ><--- 200 Type set to I.<--- 200 PORT command successful.
> >Inside retrieve:cmd=NULL, name=.test_key
> >
> >### using port number 45016 for data connection###
> ><--- 150 Opening BINARY mode data connection for .test_key (16 bytes).<---
> >150 Opening BINARY mode data connection for .test_key (16 bytes).<--- 226
> >Transfer complete.retrieve(): closed socket after sending data
> ><--- 221 You could at least say goodbye.saga7:~/cs244a/pa2/2c>
> >
> >------------------------------------------------------------------------
> >
> >
> >client side
> >-----------------------------------------------------------------------
> >saga7:~/cs244a/pa2/2c> ./ftpcopy -U c 1 
> >
> 
> >
> >####Initiating a new connection now to 171.64.15.137:45007#### (sockfd=3)
> >
> >SYN handshake completed, data_sd=7
> >====>network_send:dropping the packet
> >saga7.Stanford.EDU:53997
> >
> >DEBUG:remote_dir=.
> >
> >DEBUG: reached level 0
> >saga7.Stanford.EDU:45013
> >
> >####Accepting a new connection now at port# 45013#### (sockfd=3)
> >
> >SYN handshake completed, data_sd=8
> >====>network_send:dropping the packet
> >DEBUG: file/dir .test_key at level 0 (< 1)
> >
> >DEBUG: trying to copy file .test_key to temp
> >saga7.Stanford.EDU:45015
> >
> >####Accepting a new connection now at port# 45015#### (sockfd=3)
> >====>network_send:dropping the packet
> >
> >SYN handshake completed, data_sd=8
> >====>network_send:keeping the packet in our queue
> >====>network_send:sending the packet stored in our queue
> >
> >DEBUG: file .test_key does not match extension c
> >DEBUG: file/dir Makefile at level 0 (< 1)
> >
> >DEBUG: trying to copy file Makefile to temp
> >saga7.Stanford.EDU:45017
> >
> >DEBUG: network error with file/dir Makefile
> >ERROR: Connection reset by peer (-1)
> >Broken pipe
> >
> >----------------------------------------------------------------------
> >
> >can you tell me what is happening ???
> >
> >Milap
> >
>
>
>

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: part c
Date: Sun, 9 Feb 2003 17:28:17 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 226
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1044811697 9241 171.64.15.109 (9 Feb 2003 17:28:17 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4466





General objective for part c is to combine assignment 1 
with assignment 2a/b; however, the result is only intended 
to work with ftpd, as it's still just STCP.  That is, the 
combined code should not be expected to work with 
ftp.microsoft.com, etc. because it's STCP, correct?

Moreover, to run this ourselves, we open a window and start 
ftpd, which gives a port number.  Then we open another 
window and run something like: 

ftpcopy –U txt 2  testdir

Correct?  Then we should see two successful SYN/SYN-ACK 
sequences complete, correct (control & data)?  My output 
looks likes the first SYN/SYN-ACK completes, then an 
endless series of "ERROR: on myread"; hence, I assume there 
is no communication beyond the handshake.  The supplement 
describes that it is necessary to send a PORT command and a 
LIST command, both of which are already part of my part 1; 
what is new here?  We provide the port of the ftpd as a 
command line arg, and the port of the client must be 
determined and provided just as during the actual part 1 
use, correct?  

So, I could start tracking the above down, or switch to 
copying the provided part 1 source files from:

afs/ir/class/cs244a/WWW/homeworks/hw2/hw1obj
 
Presumably, we are to further copy Makefile.old to 
Makefile, but running make with this Makefile fails (output 
far below)?  What is the correct approach here?

Regarding either approach: How do we run the test code when 
using our modified part 1 code?  As is evident below, I 
have made several attempts to reason this out; however, 
have degenerated to trail-and-error, then to guess-and-
error, all the while consuming my allowed test quota?

Thanks, Keith


SEVERAL UNSUCCESSFUL ATTEMPTS TO RUN THE TEST CODE ON PART 
C (NOTE THAT THE LIMIT WAS HIT, W/O A SINGLE RUN OF THE 
TESTCODE!)

elaine13:~/kp>
elaine13:~/kp> /afs/ir/class/cs244a/bin/test_code.pl hw2c 
ftpcopy.c mmcopy.c tra
nsport.c
Creating submission tarball...
ftpcopy.c
mmcopy.c
transport.c

Starting...
Test B, new source tree required, extracting into 
grading_src/build...
ftpcopy.c
mmcopy.c
transport.c

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y

Daily quota of 5 test attempts applies (from Jan 1 
onwards).
You've used 3 test attempt(s) so far today.
make stcp_ftp
make: *** No rule to make target `stcp_ftp'.  Stop.
make failed (error status 2)
couldn't submit code for testing
elaine13:~/kp>


elaine13:~/kp>
elaine13:~/kp> /afs/ir/class/cs244a/bin/test_code.pl hw2c 
ftpcopy.c mmcopy.c tra
nsport.c ftpparse.c mmcopy.h ftpparse.h
Creating submission tarball...
ftpcopy.c
mmcopy.c
transport.c
ftpparse.c
mmcopy.h
ftpparse.h

Starting...
Test B, new source tree required, extracting into 
grading_src/build...
ftpcopy.c
mmcopy.c
transport.c
ftpparse.c
mmcopy.h
ftpparse.h

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 5 test attempts applies (from Jan 1 
onwards).
You've used 4 test attempt(s) so far today.
make stcp_ftp
make: *** No rule to make target `stcp_ftp'.  Stop.
make failed (error status 2)
couldn't submit code for testing
elaine13:~/kp>


elaine13:~/kp>
elaine13:~/kp> /afs/ir/class/cs244a/bin/test_code.pl hw2c 
ftpcopy.c mmcopy.c tra
nsport.c ftpparse.c mmcopy.h ftpparse.h Makefile
Creating submission tarball...
ftpcopy.c
mmcopy.c
transport.c
ftpparse.c
mmcopy.h
ftpparse.h
Makefile

Starting...
Test B, new source tree required, extracting into 
grading_src/build...
ftpcopy.c
mmcopy.c
transport.c
ftpparse.c
mmcopy.h
ftpparse.h
Makefile

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 5 test attempts applies (from Jan 1 
onwards).
You've used 5 test attempt(s) so far today.
Sorry, you've exceeded your current test quota!
couldn't submit code for testing
elaine13:~/kp>

elaine34:~/kp>
elaine34:~/kp> /afs/ir/class/cs244a/bin/test_code.pl hw2c 
ftpcopy.c mmcopy.c tra
nsport.c ftpparse.c mmcopy.h ftpparse.h Makefile
Creating submission tarball...
ftpcopy.c
mmcopy.c
transport.c
ftpparse.c
mmcopy.h
ftpparse.h
Makefile

Starting...
Test B, new source tree required, extracting into 
grading_src/build...
ftpcopy.c
mmcopy.c
transport.c
ftpparse.c
mmcopy.h
ftpparse.h
Makefile

Can't find a matching key for this test run.
Would you like to generate a new one?  (y/n):  y
Daily quota of 5 test attempts applies (from Jan 1 
onwards).
You've used 0 test attempt(s) so far today.
make stcp_ftp
make: *** No rule to make target `network.h', needed by 
`transport.o'.  Stop.
make failed (error status 2)
couldn't submit code for testing



OUTPUT WHEN I RUN MY Makefile (WHICH WAS MODIFIED FROM THE 
PART 2A2C Makefile); I'M ASSUMING THE WARNING MESSAGES DO 
NOT INDICATE A REAL PROBLEM?

elaine13:~/kp> make
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c transport.c
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -o client client.o 
transport.o network.o m
ysock.o -lsocket -lnsl -lm
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -o server server.o 
transport.o network.o m
ysock.o -lsocket -lnsl -lm
(make your.ftpcopy && /usr/pubsw/bin/cp -f your.ftpcopy 
ftpcopy) || \
(make our.ftpcopy && /usr/pubsw/bin/cp -f our.ftpcopy 
ftpcopy)
make[1]: Entering directory 
`/afs/ir.stanford.edu/users/p/r/primdahl/cs244a/pa2'
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -o your.ftpcopy 
transport.o network.o myso
ck.o ftpcopy.o mmcopy.o ftpparse.o transport.o network.o 
mysock.o -lsocket -lnsl
 -lm
ld: warning: file transport.o: attempted multiple inclusion 
of file
ld: warning: file network.o: attempted multiple inclusion 
of file
ld: warning: file mysock.o: attempted multiple inclusion of 
file
make[1]: Leaving directory 
`/afs/ir.stanford.edu/users/p/r/primdahl/cs244a/pa2'


OUTPUT WHEN I RUN the Makefile FROM 
/afs/ir/class/cs244a/WWW/homeworks/hw2/hw1obj/Makefile.old;
elaine34:~/kp> cp Makefile.old Makefile
cp: overwrite `Makefile'? y
elaine34:~/kp> make
gmake: *** No rule to make target `main.o', needed by 
`ftpcopy'.  Stop.



.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: getting 'make' to work
Date: Sun, 9 Feb 2003 10:27:14 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1044815235 10545 128.12.22.55 (9 Feb 2003 18:27:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4467

I'm still confused as to what needs to be done to get the default (provided
files) to make.
I went to :
http://www.stanford.edu/class/cs244a/homeworks/hw2/ftpd_src/src/
and downloaded those files.
I also went to :
/class/cs244a/homeworks/hw2/hw1obj
to get the provided ftpcopy

Is it supposed to work when I type "make"? It's complaining about:
make: *** No rule to make target '../libmysock.a', needed by 'ftpd'. Stop.

Where is this file? Am I supposed to create this file ?



.

Path: shelby.stanford.edu!elaine3.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: part c
Date: Sun, 9 Feb 2003 19:51:05 +0000 (UTC)
Lines: 44
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1044820265 12912 171.64.15.68 (9 Feb 2003 19:51:05 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4468


>General objective for part c is to combine assignment 1 
>with assignment 2a/b; however, the result is only intended 
>to work with ftpd, as it's still just STCP.  That is, the 
>combined code should not be expected to work with 
>ftp.microsoft.com, etc. because it's STCP, correct?

Correct

>Moreover, to run this ourselves, we open a window and start 
>ftpd, which gives a port number.  Then we open another 
>window and run something like: 
>
>ftpcopy -U txt 2  testdir

Correct.

>So, I could start tracking the above down, or switch to 
>copying the provided part 1 source files from:
>
>afs/ir/class/cs244a/WWW/homeworks/hw2/hw1obj
> 
>Presumably, we are to further copy Makefile.old to 
>Makefile, but running make with this Makefile fails (output 
>far below)?  What is the correct approach here?

No; use the Makefile that you have (or had) already (from the gethw2 script).
If you look in there, you'll find the stcp_ftp target expected by
the grading script.  (I renamed the Makefile in hw1obj to Makefile.old
expressly because it is an old file).

You don't need to copy those object files, because the Makefile looks for
them in that directory anyway.

>Regarding either approach: How do we run the test code when 
>using our modified part 1 code?  As is evident below, I 
>have made several attempts to reason this out; however, 
>have degenerated to trail-and-error, then to guess-and-
>error, all the while consuming my allowed test quota?

This question has been answered on the newsgroup previously, so a good
idea in future would be to check here first.  Submit *.c, *.h, Makefile,
i.e. whatever files are needed to build the stcp_ftp target in the Makefile.

.

Path: shelby.stanford.edu!elaine3.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: getting 'make' to work
Date: Sun, 9 Feb 2003 19:56:36 +0000 (UTC)
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1044820596 12989 171.64.15.68 (9 Feb 2003 19:56:36 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4469


>I'm still confused as to what needs to be done to get the default (provided
>files) to make.
>I went to :
>http://www.stanford.edu/class/cs244a/homeworks/hw2/ftpd_src/src/
>and downloaded those files.
>I also went to :
>/class/cs244a/homeworks/hw2/hw1obj
>to get the provided ftpcopy

>Is it supposed to work when I type "make"? It's complaining about:
>make: *** No rule to make target '../libmysock.a', needed by 'ftpd'. Stop.

>Where is this file? Am I supposed to create this file ?

It looks like you didn't grab the whole source tree; copy ftpd_src rather
than just the src subdirectory in there.

But unless you need to rebuild the reference ftpd for some reason (can't think
why you'd want or need to do this), you shouldn't need to bother doing this.
To get the provided files to work, all you should have to do is run
'make stcp_ftp' with the Makefile you used in parts A and B.  To test it,
submit that Makefile and all required source files (*.c, *.h most likely).

.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: links in part
Date: Sun, 9 Feb 2003 15:07:42 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044832064 17839 171.64.15.78 (9 Feb 2003 23:07:44 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4470

I was using the provided ftpclient and found out not only the files, but
the links were transferred over.  Can some TA confirm that?  Thanks.

Eric


.

Path: shelby.stanford.edu!saga3.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: midterm questions
Date: Sun, 9 Feb 2003 15:18:51 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044832731 18139 171.64.15.133 (9 Feb 2003 23:18:51 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4471

1. Are we allowed to use a calculator for the exam?

2. In the Bellstrom-Ford algorithm, there are different ways to show work.
Steve during section, as well as various solutions to homework and sample
midterms, show a NxN grid which effectively shows the routing tables for
each of the N routers. The lecture notes show only a single "row" (or
column...I forget) showing the important subset for each router, the
single entry to the "end point".

Given that all the questions I've seen so far state "show your work for
the routing TO router X", it's a lot less work to only show only the one
relevant row. Is that acceptable?

Jonathan

.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Problem with test C for 2.C
Date: Sun, 9 Feb 2003 19:15:36 -0800
Lines: 117
Distribution: su
Message-ID: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1044846692 24425 128.12.184.109 (10 Feb 2003 03:11:32 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4472

Hi I am having a problem with the test script:

When I run the following command, it works perfectly well giving the correct
output and copying the files appropriately with correct cksum
elaine9: >/afs/ir/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd
elaine9:> ./ftpcopy -U html 1 
OK: 27527 bytes copied.

But when I run the test script test C fails
and none of the other tests are run because of this

The command that i m using is :
/afs/ir/class/cs244a/bin/test_code.pl hw2c *.c *.h Makefile

Results:
Test B [out of 5]
Checks that ftpcopy runs without error.

Results:  OK
----------------------------------------------------------------------

Test C [out of 4.5]
Checks that ftpcopy transfers at least one file.

Results:  NOT OK (passed only 0 out of 1 subtests)

Program output (localhost):


----------------------------------------------------------------------

Test D [out of 4]
Checks that ftpcopy transfers at least one matching file.

Results:  NOT TESTED
----------------------------------------------------------------------

Test F.1 [out of 1]
Checks that ftpcopy transfers all matching files in top level.

Results:  NOT TESTED
----------------------------------------------------------------------

Test F.2 [out of 1]
Checks that ftpcopy transfers all matching files in all required levels.

Results:  NOT TESTED
----------------------------------------------------------------------

Test F.3 [out of 1]
Checks that ftpcopy doesn't transfer above the last specified level.

Results:  NOT TESTED
----------------------------------------------------------------------

Test F.4 [out of 1]
Checks that ftpcopy doesn't transfer a non-matching file.

Results:  NOT TESTED
----------------------------------------------------------------------

Test G [out of 1]
Checks that ftpcopy downloads files with correct cksum.

Results:  NOT TESTED
----------------------------------------------------------------------

Test I [out of 0.5]
Checks that ftpcopy matches required UI specification.

Results:  NOT TESTED
----------------------------------------------------------------------

Test J [out of 0.5]
Checks that ftpcopy creates files with correct perms.

Results:  NOT TESTED
----------------------------------------------------------------------

Test L.1 [out of 0.5]
Checks that ftpcopy transfers zero byte file correctly.

Results:  NOT TESTED
----------------------------------------------------------------------

Test L.2 [out of 0.5]
Checks that ftpcopy does not erroneously create empty dir.

Results:  NOT TESTED
----------------------------------------------------------------------

Test L.3 [out of 0.5]
Checks that ftpcopy does not create inaccessible file.

Results:  NOT TESTED
----------------------------------------------------------------------

Test L.4 [out of 0.5]
Checks that ftpcopy does not erroneously create dir containing only empty
subdirs.

Results:  NOT TESTED
----------------------------------------------------------------------

Test L.7 [out of 0.5]
Checks that ftpcopy returns error on non-existent remote dir.

Results:  NOT TESTED
----------------------------------------------------------------------

Test L.6 [out of 0.5]
Checks that ftpcopy returns error on non-existent host.

Results:  OK
----------------------------------------------------------------------


.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: Re: Problem with test C for 2.C
Date: Sun, 9 Feb 2003 20:18:30 -0800
Lines: 125
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044850711 26394 171.64.15.78 (10 Feb 2003 04:18:31 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4473

I was afraid that it was just me.  I had the same issue, with the exact
same output!


On Sun, 9 Feb 2003, Pavan wrote:

> Hi I am having a problem with the test script:
>
> When I run the following command, it works perfectly well giving the correct
> output and copying the files appropriately with correct cksum
> elaine9: >/afs/ir/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd
> elaine9:> ./ftpcopy -U html 1 
> OK: 27527 bytes copied.
>
> But when I run the test script test C fails
> and none of the other tests are run because of this
>
> The command that i m using is :
> /afs/ir/class/cs244a/bin/test_code.pl hw2c *.c *.h Makefile
>
> Results:
> Test B [out of 5]
> Checks that ftpcopy runs without error.
>
> Results:  OK
> ----------------------------------------------------------------------
>
> Test C [out of 4.5]
> Checks that ftpcopy transfers at least one file.
>
> Results:  NOT OK (passed only 0 out of 1 subtests)
>
> Program output (localhost):
>
>
> ----------------------------------------------------------------------
>
> Test D [out of 4]
> Checks that ftpcopy transfers at least one matching file.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test F.1 [out of 1]
> Checks that ftpcopy transfers all matching files in top level.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test F.2 [out of 1]
> Checks that ftpcopy transfers all matching files in all required levels.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test F.3 [out of 1]
> Checks that ftpcopy doesn't transfer above the last specified level.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test F.4 [out of 1]
> Checks that ftpcopy doesn't transfer a non-matching file.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test G [out of 1]
> Checks that ftpcopy downloads files with correct cksum.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test I [out of 0.5]
> Checks that ftpcopy matches required UI specification.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test J [out of 0.5]
> Checks that ftpcopy creates files with correct perms.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test L.1 [out of 0.5]
> Checks that ftpcopy transfers zero byte file correctly.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test L.2 [out of 0.5]
> Checks that ftpcopy does not erroneously create empty dir.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test L.3 [out of 0.5]
> Checks that ftpcopy does not create inaccessible file.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test L.4 [out of 0.5]
> Checks that ftpcopy does not erroneously create dir containing only empty
> subdirs.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test L.7 [out of 0.5]
> Checks that ftpcopy returns error on non-existent remote dir.
>
> Results:  NOT TESTED
> ----------------------------------------------------------------------
>
> Test L.6 [out of 0.5]
> Checks that ftpcopy returns error on non-existent host.
>
> Results:  OK
> ----------------------------------------------------------------------
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: ftpcopy modifications
Date: Sun, 09 Feb 2003 23:15:08 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1044861282 1165 128.12.72.54 (10 Feb 2003 07:14:42 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4474

I'm having problems getting my ftpcopy implementation from the first 
assignment to work with this assignment's ftpd.  Specifically, the 
responses from the server are comming back wierd...

Instead of a "150 ..." message across the control connection before a 
file transfer begins, I'm getting a "STCP-SYN packet sent" - which is a 
dprintf() call in my transport.c file.  My ftpcopy program sees that 
this isn't a valid response and errors out.  The wierd thing is, the 
libftpcopy.a version works perfectly fine.

Does this mean the ftpd implementation is wierd - part of the "standard 
output goes somewhere else" (even though I'm printing to stderr)?  Is 
there a moderately simple way around this problem (without simply 
ignoring all FTP responses)?  Since the libftpcopy.a version is working 
fine for me I don't want to spend TOO much time tinkering, but I'm 
curious - and I finally have time to get it working right :)

-Kevin

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: can't "make purify.all"
Date: Mon, 10 Feb 2003 01:01:13 -0800
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044867674 4416 171.64.15.69 (10 Feb 2003 09:01:14 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4475

hi!

I've been having trouble using purify. the errors are pasted below. it's
probably not a space issue since i still have 60MB free according to
"lelandquota" .. any suggestions?

thanks!
Tan


elaine4:~/cs244a/mytcp> make all.purify
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c client.c
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c transport.c
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c network.c
gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c mysock.c

purify -follow-child-processes=yes -cache-dir=/tmp/wwtgao  gcc -g -ansi
-DSOLARIS -DDEBUG  -Wall -o client.purify client.o transport.o network.o
mysock.o -lsocket -lnsl -lm
Purify 2002a.06.00 Solaris 2 (32-bit) Copyright (C) 1992-2002 Rational
Software Corp.  All rights reserved.
Instrumenting: client.o transport.o network.o mysock.o  Linking
Error: ForkExec(/usr/ccs/bin/ld ...) couldn't fork
Error code: Resource temporarily unavailable

Purify engine: Error: -
System error code: Resource temporarily unavailable
make: *** [client.purify] Error 1

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: can't "make all.purify"
Date: Mon, 10 Feb 2003 01:04:13 -0800
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044867854 4496 171.64.15.69 (10 Feb 2003 09:04:14 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4476

sorry, in the previous post's subject line, I meant:

make all.purify

Tan


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Question about Jacobson/Karels Algorithm
Date: Mon, 10 Feb 2003 01:07:43 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1044867967 4528 128.12.195.69 (10 Feb 2003 09:06:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4477

In the Jacobson/Karels Algorithm,

EstimatedRTT = EstimatedRTT + (sigma x difference)
Deivation = Deviation + sigma (|difference| - deviation)

How do we determine sigma? Book only says sigma is a fraction between 0 and
1.

Thanks.

-myl


.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Daily quota of 5000 test attempts
Date: Mon, 10 Feb 2003 04:49:38 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine39.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044881380 10307 171.64.15.114 (10 Feb 2003 12:49:40 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4478

I was running test on part 2b, and saw this. Just want to verify with TAs
that this is no mistake. Daily quota of 5 test attempts only apply to part
2c at this point, is that so?

Jichun

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Daily quota of 5000 test attempts
Date: Mon, 10 Feb 2003 20:25:27 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1044908727 22966 171.64.15.76 (10 Feb 2003 20:25:27 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4479


>I was running test on part 2b, and saw this. Just want to verify with TAs
>that this is no mistake. Daily quota of 5 test attempts only apply to part
>2c at this point, is that so?

Correct.  Parts A and B are long over.
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: some error in 2c
Date: Mon, 10 Feb 2003 20:52:40 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 18
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044910360 23919 171.64.15.112 (10 Feb 2003 20:52:40 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4480

The source code is under /usr/class/cs244a/WWW/homeworks/hw2/ftpd_src
if you need it.

SteveJ

In article 
Milap Chandrakant Shah   wrote:
>Hi,
>
>I also know that client is reading after server is reading from it. How do
>you debug this thing, I dont know the interface, what do I need to check
>? where can the problem lie?
>I cant use my ftpcopy because I am using recv with MSG_PEEK, so I am using
>your object files and I cant figure out whats going on?
>
>PLease tell me what I can do....
>Milap
>
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: midterm questions
Date: Mon, 10 Feb 2003 21:05:20 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 29
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044911120 24252 171.64.15.112 (10 Feb 2003 21:05:20 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4481

In article 
Jonathan D Herbach   wrote:
>1. Are we allowed to use a calculator for the exam?

Yes.  No computers, though.

>
>2. In the Bellstrom-Ford algorithm, there are different ways to show work.
>Steve during section, as well as various solutions to homework and sample
>midterms, show a NxN grid which effectively shows the routing tables for
>each of the N routers. The lecture notes show only a single "row" (or
>column...I forget) showing the important subset for each router, the
>single entry to the "end point".
>
>Given that all the questions I've seen so far state "show your work for
>the routing TO router X", it's a lot less work to only show only the one
>relevant row. Is that acceptable?

It really depends on the question, so make sure you provide what
the question asks for.  For Bellman-Ford, it is hard to show your
work at each step without computing all the routing tables.

SteveJ

>
>Jonathan
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem with test C for 2.C
Date: Mon, 10 Feb 2003 21:14:45 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 132
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044911685 24601 171.64.15.112 (10 Feb 2003 21:14:45 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4482

If I understand correctly, the reference application works
correctly, but the library is failing with your transport?

The test failures say that no files could be transfered.
With that as a precondition, it makes sense that none of
the other tests would be tried.

Am I missing the point of your question?

SteveJ

In article 
Pavan  wrote:
>Hi I am having a problem with the test script:
>
>When I run the following command, it works perfectly well giving the correct
>output and copying the files appropriately with correct cksum
>elaine9: >/afs/ir/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd
>elaine9:> ./ftpcopy -U html 1 
>OK: 27527 bytes copied.
>
>But when I run the test script test C fails
>and none of the other tests are run because of this
>
>The command that i m using is :
>/afs/ir/class/cs244a/bin/test_code.pl hw2c *.c *.h Makefile
>
>Results:
>Test B [out of 5]
>Checks that ftpcopy runs without error.
>
>Results:  OK
>----------------------------------------------------------------------
>
>Test C [out of 4.5]
>Checks that ftpcopy transfers at least one file.
>
>Results:  NOT OK (passed only 0 out of 1 subtests)
>
>Program output (localhost):
>
>
>----------------------------------------------------------------------
>
>Test D [out of 4]
>Checks that ftpcopy transfers at least one matching file.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test F.1 [out of 1]
>Checks that ftpcopy transfers all matching files in top level.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test F.2 [out of 1]
>Checks that ftpcopy transfers all matching files in all required levels.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test F.3 [out of 1]
>Checks that ftpcopy doesn't transfer above the last specified level.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test F.4 [out of 1]
>Checks that ftpcopy doesn't transfer a non-matching file.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test G [out of 1]
>Checks that ftpcopy downloads files with correct cksum.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test I [out of 0.5]
>Checks that ftpcopy matches required UI specification.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test J [out of 0.5]
>Checks that ftpcopy creates files with correct perms.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test L.1 [out of 0.5]
>Checks that ftpcopy transfers zero byte file correctly.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test L.2 [out of 0.5]
>Checks that ftpcopy does not erroneously create empty dir.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test L.3 [out of 0.5]
>Checks that ftpcopy does not create inaccessible file.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test L.4 [out of 0.5]
>Checks that ftpcopy does not erroneously create dir containing only empty
>subdirs.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test L.7 [out of 0.5]
>Checks that ftpcopy returns error on non-existent remote dir.
>
>Results:  NOT TESTED
>----------------------------------------------------------------------
>
>Test L.6 [out of 0.5]
>Checks that ftpcopy returns error on non-existent host.
>
>Results:  OK
>----------------------------------------------------------------------
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: ftpcopy modifications
Date: Mon, 10 Feb 2003 21:20:32 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044912032 24898 171.64.15.112 (10 Feb 2003 21:20:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4483

In article 
Kevin Christopher   wrote:
>I'm having problems getting my ftpcopy implementation from the first 
>assignment to work with this assignment's ftpd.  Specifically, the 
>responses from the server are comming back wierd...
>
>Instead of a "150 ..." message across the control connection before a 
>file transfer begins, I'm getting a "STCP-SYN packet sent" - which is a 
>dprintf() call in my transport.c file.  My ftpcopy program sees that 
>this isn't a valid response and errors out.  The wierd thing is, the 
>libftpcopy.a version works perfectly fine.

You're sure this is a dprintf, not a printf?  I recall something
about $stdout being redirected.

>
>Does this mean the ftpd implementation is wierd - part of the "standard 
>output goes somewhere else" (even though I'm printing to stderr)?  Is 
>there a moderately simple way around this problem (without simply 
>ignoring all FTP responses)?  Since the libftpcopy.a version is working 
>fine for me I don't want to spend TOO much time tinkering, but I'm 
>curious - and I finally have time to get it working right :)

Turning off debugging output would seem the simplest.  

Checking for a well-formed FTP response (3 leading digits) and
discarding non-compliant input would seem second easiest.

SteveJ

>
>-Kevin
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: can't "make purify.all"
Date: Mon, 10 Feb 2003 21:22:31 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 41
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044912151 24941 171.64.15.112 (10 Feb 2003 21:22:31 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4484

Is this a transient problem?

There may be a ceiling on number of simultaneous uses of Purify
(licensing restriction), which could cause intermittent failures.
Or, the license server could have been down.

SteveJ

In article 
Tan Gao (weiwei)  wrote:
>hi!
>
>I've been having trouble using purify. the errors are pasted below. it's
>probably not a space issue since i still have 60MB free according to
>"lelandquota" .. any suggestions?
>
>thanks!
>Tan
>
>
>elaine4:~/cs244a/mytcp> make all.purify
>gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c client.c
>gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c transport.c
>gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c network.c
>gcc -g -ansi -DSOLARIS -DDEBUG  -Wall -c mysock.c
>
>purify -follow-child-processes=yes -cache-dir=/tmp/wwtgao  gcc -g -ansi
>-DSOLARIS -DDEBUG  -Wall -o client.purify client.o transport.o network.o
>mysock.o -lsocket -lnsl -lm
>Purify 2002a.06.00 Solaris 2 (32-bit) Copyright (C) 1992-2002 Rational
>Software Corp.  All rights reserved.
>Instrumenting: client.o transport.o network.o mysock.o  Linking
>Error: ForkExec(/usr/ccs/bin/ld ...) couldn't fork
>Error code: Resource temporarily unavailable
>
>Purify engine: Error: -
>System error code: Resource temporarily unavailable
>make: *** [client.purify] Error 1
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: links in part
Date: Mon, 10 Feb 2003 21:37:56 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1044913076 25451 171.64.15.112 (10 Feb 2003 21:37:56 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4485

Other TAs, do you know about this?

SteveJ

In article 
Eric Chenjian Xu   wrote:
>I was using the provided ftpclient and found out not only the files, but
>the links were transferred over.  Can some TA confirm that?  Thanks.
>
>Eric
>
>


.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: links in part
Date: Mon, 10 Feb 2003 21:56:20 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1044914180 26242 171.64.15.76 (10 Feb 2003 21:56:20 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4486


>I was using the provided ftpclient and found out not only the files, but
>the links were transferred over.  Can some TA confirm that?  Thanks.

Thanks for pointing this out.  I distinctly remember fixing this many months
ago, but the changes don't appear to be in the current sources for some reason.

We won't be testing this case.

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: ftpcopy modifications
Date: Mon, 10 Feb 2003 22:10:20 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1044915020 26745 171.64.15.76 (10 Feb 2003 22:10:20 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4487


>Does this mean the ftpd implementation is wierd - part of the "standard 
>output goes somewhere else" (even though I'm printing to stderr)?  Is 
>there a moderately simple way around this problem (without simply 
>ignoring all FTP responses)?  Since the libftpcopy.a version is working 
>fine for me I don't want to spend TOO much time tinkering, but I'm 
>curious - and I finally have time to get it working right :)

Yes, ftpd is annoying.  debug_ftpd seems to show the same behaviour,
which confuses me because I know I had this working before.  (The code
must have atrophied after a few months of disuse).  If I figure this out,
I'll post on here again.

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem with test C for 2.C
Date: Mon, 10 Feb 2003 22:13:32 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1044915212 26855 171.64.15.76 (10 Feb 2003 22:13:32 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4488

It's certainly possible, but it seems to be working for most people, so I'd
think it's more likely that the test script is having a problem with your
transport layer.  Can you duplicate the problem if you run the exact commands
the script does, i.e. same directories?  If not, please send me a pointer
to your code/test submission command.

.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: NO test quota for me?
Date: Mon, 10 Feb 2003 15:39:43 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine30.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044920385 29905 171.64.15.105 (10 Feb 2003 23:39:45 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4489

Previously I sent an email to confirm that running test script on part B
is unlimited at this point and it does not take away my quota for part C.
Indeed, I was able to run test on part B unlimited times. But now, when I
try to test part C for the first time of today, the script says I have run
out of quota.

Is this supposed to be so?

Jichun

.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Re: Problem with test C for 2.C
Date: Mon, 10 Feb 2003 15:44:45 -0800
Lines: 38
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1044920438 29999 128.12.184.109 (10 Feb 2003 23:40:38 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4490

Hi,
I did what you have suggested. I find the following problem:-

Ran the command in the directory exactly being used by the script and  when
I used the ftpd which is in the course directory, my code worked correctly-
The output says: OK:233889 bytes copied.

When I used the ftpd which is in my grading_src/build directory, I find that
it is exiting with an error without transferring even a single file.

I guess this cud be a problem that the library is failing with my
transport,as Steve suggested. I dont think it coud be a problem with my
code.. could it be? How do I make my code compatible with the library.

I am attaching my submission directory in the next mail to you. Please help
me fix this.

Thanks,
Pavan.


----- Original Message -----
From: "Matthew Jonathan Holliman" 
Newsgroups: su.class.cs244a
Sent: Monday, February 10, 2003 2:13 PM
Subject: Re: Problem with test C for 2.C


> It's certainly possible, but it seems to be working for most people, so
I'd
> think it's more likely that the test script is having a problem with your
> transport layer.  Can you duplicate the problem if you run the exact
commands
> the script does, i.e. same directories?  If not, please send me a pointer
> to your code/test submission command.
>


.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: NO test quota for me?
Date: Tue, 11 Feb 2003 00:15:42 +0000 (UTC)
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1044922542 1557 171.64.15.76 (11 Feb 2003 00:15:42 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4491


>Previously I sent an email to confirm that running test script on part B
>is unlimited at this point and it does not take away my quota for part C.
>Indeed, I was able to run test on part B unlimited times. But now, when I
>try to test part C for the first time of today, the script says I have run
>out of quota.

I didn't see anything in your previous post asking about B attempts not
counting against your C quota.  The script doesn't care what test you're
submitting for; it looks only at the number of submissions today, under
the assumption that people are working only on one part at a time.  So if
you submit a whole bunch of B tests, these would count against your C quota.
(I don't know why on earth you'd be testing B now unless you didn't get this
working already; I increased the quota here for those people who never
got this correct, but still wanted to figure out for their own edification
what was wrong with their code).

>Is this supposed to be so?

Yes.  If you still want to test part C in future, submit all of your
files to the part B test; the extra ones will be ignored, but you can
rerun this same test (as long as you haven't changed the code) for part C
without penalty.

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: NO test quota for me?
Date: Mon, 10 Feb 2003 16:21:58 -0800
Lines: 36
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044922919 1879 171.64.15.85 (11 Feb 2003 00:21:59 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4492

These are precisely the kind of confusions that a FAQ is
needed for.  Based on your earlier reply, I thought that
we had 5000 test attempts for partB, and then we could
have 5 separate test attempts for partC.  That was not
at all clear from the post.

- Erik

On Tue, 11 Feb 2003, Matthew Jonathan Holliman wrote:

>
> >Previously I sent an email to confirm that running test script on part B
> >is unlimited at this point and it does not take away my quota for part C.
> >Indeed, I was able to run test on part B unlimited times. But now, when I
> >try to test part C for the first time of today, the script says I have run
> >out of quota.
>
> I didn't see anything in your previous post asking about B attempts not
> counting against your C quota.  The script doesn't care what test you're
> submitting for; it looks only at the number of submissions today, under
> the assumption that people are working only on one part at a time.  So if
> you submit a whole bunch of B tests, these would count against your C quota.
> (I don't know why on earth you'd be testing B now unless you didn't get this
> working already; I increased the quota here for those people who never
> got this correct, but still wanted to figure out for their own edification
> what was wrong with their code).
>
> >Is this supposed to be so?
>
> Yes.  If you still want to test part C in future, submit all of your
> files to the part B test; the extra ones will be ignored, but you can
> rerun this same test (as long as you haven't changed the code) for part C
> without penalty.
>
>

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem with test C for 2.C
Date: Tue, 11 Feb 2003 00:22:00 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1044922920 1883 171.64.15.76 (11 Feb 2003 00:22:00 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4493

I doubt that I'll have time to look at this until tomorrow or more likely
Wednesday (if then), so please do try and look at this yourself in the
meantime.  You should be able to build your own ftpd using the provided
sources if you need to step into it.  Does your code fail also against
the reference ftpd, which is built as
  /usr/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd?
.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: NO test quota for me?
Date: Tue, 11 Feb 2003 00:32:07 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1044923527 2209 171.64.15.76 (11 Feb 2003 00:32:07 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4494

I agree with your suggestion, and will be incorporating many of these exact
questions into a grading script FAQ for future years.  (As you might guess,
this is the first time these particular scripts have been made publicly
available, and I really hadn't anticipated this level of confusion on the
part of users over points that had seemed pretty obvious to me).
.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Problem with test C for 2.C
Date: Tue, 11 Feb 2003 02:25:05 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 47
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine41.stanford.edu
X-Trace: news.Stanford.EDU 1044930305 5856 171.64.15.116 (11 Feb 2003 02:25:05 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4495

Sounds like a good problem to bring by office hours.  I don't
have any further ideas.

SteveJ

In article 
Pavan  wrote:
>Hi,
>I did what you have suggested. I find the following problem:-
>
>Ran the command in the directory exactly being used by the script and  when
>I used the ftpd which is in the course directory, my code worked correctly-
>The output says: OK:233889 bytes copied.
>
>When I used the ftpd which is in my grading_src/build directory, I find that
>it is exiting with an error without transferring even a single file.
>
>I guess this cud be a problem that the library is failing with my
>transport,as Steve suggested. I dont think it coud be a problem with my
>code.. could it be? How do I make my code compatible with the library.
>
>I am attaching my submission directory in the next mail to you. Please help
>me fix this.
>
>Thanks,
>Pavan.
>
>
>----- Original Message -----
>From: "Matthew Jonathan Holliman" 
>Newsgroups: su.class.cs244a
>Sent: Monday, February 10, 2003 2:13 PM
>Subject: Re: Problem with test C for 2.C
>
>
>> It's certainly possible, but it seems to be working for most people, so
>I'd
>> think it's more likely that the test script is having a problem with your
>> transport layer.  Can you duplicate the problem if you run the exact
>commands
>> the script does, i.e. same directories?  If not, please send me a pointer
>> to your code/test submission command.
>>
>
>


.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: midterm questions
Date: Tue, 11 Feb 2003 02:41:43 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 22
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine41.stanford.edu
X-Trace: news.Stanford.EDU 1044931303 6431 171.64.15.116 (11 Feb 2003 02:41:43 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4497

The short answer for exams:  Should a Bellman-Ford question appear
on an exam, you can expect us to make it very clear what information
you need to provide.

SteveJ

>>2. In the Bellstrom-Ford algorithm, there are different ways to show work.
>>Steve during section, as well as various solutions to homework and sample
>>midterms, show a NxN grid which effectively shows the routing tables for
>>each of the N routers. The lecture notes show only a single "row" (or
>>column...I forget) showing the important subset for each router, the
>>single entry to the "end point".
>>
>>Given that all the questions I've seen so far state "show your work for
>>the routing TO router X", it's a lot less work to only show only the one
>>relevant row. Is that acceptable?
>
>It really depends on the question, so make sure you provide what
>the question asks for.  For Bellman-Ford, it is hard to show your
>work at each step without computing all the routing tables.
>
>SteveJ
.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Question about Jacobson/Karels Algorithm
Date: Tue, 11 Feb 2003 05:03:31 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine7.stanford.edu
X-Trace: news.Stanford.EDU 1044939811 11309 171.64.15.72 (11 Feb 2003 05:03:31 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4498

I couldn't find a recommended value for sigma with a Google search.
I will do some more research tomorrow, when I have access to my library.

I recall sigma is one of those "fudge factors" which doesn't have
a required value.

SteveJ

In article 
Man Yu Lui  wrote:
>In the Jacobson/Karels Algorithm,
>
>EstimatedRTT = EstimatedRTT + (sigma x difference)
>Deivation = Deviation + sigma (|difference| - deviation)
>
>How do we determine sigma? Book only says sigma is a fraction between 0 and
>1.
>
>Thanks.
>
>-myl
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Re: Problem with test C for 2.C
Date: Mon, 10 Feb 2003 21:33:43 -0800
Lines: 63
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1044941374 12107 128.12.184.109 (11 Feb 2003 05:29:34 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4499

Hi,
    The mistake I did was that - there was a line puts("forking processes")
in the original transport.c which I forgot removing. After removing this, it
worked.
Thanks for the suggestions.
Pavan.
"Steve Jacobson"  wrote in message

> Sounds like a good problem to bring by office hours.  I don't
> have any further ideas.
>
> SteveJ
>
> In article 
> Pavan  wrote:
> >Hi,
> >I did what you have suggested. I find the following problem:-
> >
> >Ran the command in the directory exactly being used by the script and
when
> >I used the ftpd which is in the course directory, my code worked
correctly-
> >The output says: OK:233889 bytes copied.
> >
> >When I used the ftpd which is in my grading_src/build directory, I find
that
> >it is exiting with an error without transferring even a single file.
> >
> >I guess this cud be a problem that the library is failing with my
> >transport,as Steve suggested. I dont think it coud be a problem with my
> >code.. could it be? How do I make my code compatible with the library.
> >
> >I am attaching my submission directory in the next mail to you. Please
help
> >me fix this.
> >
> >Thanks,
> >Pavan.
> >
> >
> >----- Original Message -----
> >From: "Matthew Jonathan Holliman" 
> >Newsgroups: su.class.cs244a
> >Sent: Monday, February 10, 2003 2:13 PM
> >Subject: Re: Problem with test C for 2.C
> >
> >
> >> It's certainly possible, but it seems to be working for most people, so
> >I'd
> >> think it's more likely that the test script is having a problem with
your
> >> transport layer.  Can you duplicate the problem if you run the exact
> >commands
> >> the script does, i.e. same directories?  If not, please send me a
pointer
> >> to your code/test submission command.
> >>
> >
> >
>
>


.

Path: shelby.stanford.edu!elaine14.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: testscript -- cannot create file
Date: Mon, 10 Feb 2003 22:44:05 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine14.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044945847 14369 171.64.15.79 (11 Feb 2003 06:44:07 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4500

Yesterday when I ran the testscript, my program passed all the tests.
Today, before I was about to submit it, I ran the script again, got the
following messages.  And most of the test results are "NOT TESTED".
Ideas?  Thanks.

DEBUG: file/dir Makefile at level 0 (< 3)

DEBUG: trying to copy file Makefile to localhost_c_3_0
elaine14.Stanford.EDU:54289

####Accepting a new connection now at port# 54289#### (sockfd=4)

DEBUG: error when creating file localhost_c_3_0/Makefile
ERROR: Permission denied


.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!anisham
From: Anisha Malhotra 
Newsgroups: su.class.cs244a
Subject: Permission denied
Date: Mon, 10 Feb 2003 22:46:50 -0800
Lines: 39
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044946016 14413 171.64.15.76 (11 Feb 2003 06:46:56 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4501

Hi,

I am starting the server using:
/usr/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd
I am using the provided solution to Assgn #1 and running the client:
../ftpcopy class 2 


I get a permission denied error:


####Initiating a new connection now to 171.64.15.76:39891#### (sockfd=3)
elaine11.Stanford.EDU:39866

DEBUG:remote_dir=.

DEBUG: reached level 0
elaine11.Stanford.EDU:39900

####Accepting a new connection now at port# 39900#### (sockfd=3)
DEBUG: file/dir DESCRIPTION at level 0 (< 1)

DEBUG: trying to copy file DESCRIPTION to data
elaine11.Stanford.EDU:39902

####Accepting a new connection now at port# 39902#### (sockfd=3)

DEBUG: error when creating file data/DESCRIPTION
ERROR: Permission denied (-1)

I don't understand why it is trying to copy DESCRIPTION and why does it
give me a permission denied error on the first file in the remote dir.

I had no problems running the server and client on the weekend. But when I
tried to run it today, I saw this error.

Thanks,
Anisha

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: test result when using provided object files
Date: Mon, 10 Feb 2003 23:19:51 -0800
Lines: 50
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044947994 15544 171.64.15.76 (11 Feb 2003 07:19:54 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4502

Hi,

I had a same set of test result as the one mentioned in "Problem with test
C for 2.C" when I run my test script with the given object files, ie, 2.C
failed and all subsequent tests are NOT TESTED. But when I use my own
modified ftpcopy.c, everything works fine and all tests in script passed.
I'm just wondering why this could happen, ie, using my transport layer, my
ftpclient can talk to provided ftpserver, but provided ftpclient can not
talk to provided ftpserver.

The following is the running result from provided client side: (I have a
src directory with a.gz, b.gz and c.gz in it; and an empty dst directory
in current running directory. Similar run test with my own ftpcopy was
fine.)

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

elaine11:/tmp/mingying> ./our.ftpcopy gz 1 


elaine11.Stanford.EDU:39814

DEBUG:remote_dir=src

DEBUG: reached level 0
elaine11.Stanford.EDU:39771
DEBUG: file/dir a.gz at level 0 (< 1)

DEBUG: trying to copy file a.gz to dst
elaine11.Stanford.EDU:39773

DEBUG: error when creating file dst/a.gz
ERROR: Permission denied (-1)

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

It seems the problem occurs when client side trying to create file a.gz so
the parent close local_data_sd and exit. In this case, the child will send
FIN to server side. Indeed, I saw in server side got FIN and send FIN_ACK
before exit. I think this type of error shouldn't be because of my
transport layer, yet why other students can pass the test script using the
provided object files? I'm really confused.

BTW, since we can change Makefile to make it work with our own ftpcopy, is
that required that our code also have towork with the provided object
files?

Thanks.
Mingying

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Want to get a headstart on PA#3?
Date: Tue, 11 Feb 2003 08:28:08 +0000 (UTC)
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1044952088 18037 171.64.15.77 (11 Feb 2003 08:28:08 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4503

Hi Everyone,

We are looking for 2-3 volunteers that want to beta test PA#3 for us. We
have completely re-written the server so yu can expect a few bugs, some
errors in the documentation and even minor changes in the assignment while
you do it. You would start the assignment Thursday this week and we would
expect you to submit an at least semi-complete assignment once before
February 20 On top of it you are not elegibel for the prize for the
earliest submission. 

For being a daring beta tester you get these perks:
- 24/7 (or at least as long as my cell is on) phone support
- Unlimited personal email support
- One bonus submission. You can submit once before February 20, we will 
  grade it and if you don't like your score you can fix bugs, style etc.
  and subit again. Your final deadline is the same as for everyone else.

If you are interested mail 

  Guido
.

Path: shelby.stanford.edu!not-for-mail
From: Fritz Budiyanto 
Newsgroups: su.class.cs244a
Subject: Application Layer never read the data
Date: Tue, 11 Feb 2003 18:38:03 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga3.stanford.edu
X-Trace: news.Stanford.EDU 1044988683 3617 171.64.15.133 (11 Feb 2003 18:38:03 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4504

Try it on different machine. I have similar problem on elaine30, somehow
it has file creation problem on setting the specific permssion.

fritz
.

Path: shelby.stanford.edu!not-for-mail
From: "Keith Simmons" 
Newsgroups: su.class.cs244a
Subject: Re: Permission denied
Date: Tue, 11 Feb 2003 11:00:39 -0800
Lines: 53
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: ksimmons.stanford.edu
X-Trace: news.Stanford.EDU 1044990040 4518 128.12.105.123 (11 Feb 2003 19:00:40 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4505

Though I am certainly not an authority on the subject, it appears that in
order to make an object built from their supplied libraries work, you must
run both ftpd and ftpcopy on the same machine.  This seems to have solved my
problems with permission denied errors, so hopefully it helps others as
well.

Keith

"Anisha Malhotra"  wrote in message

> Hi,
>
> I am starting the server using:
> /usr/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd
> I am using the provided solution to Assgn #1 and running the client:
> ./ftpcopy class 2 
>
>
> I get a permission denied error:
>

nonymous
>
> ####Initiating a new connection now to 171.64.15.76:39891#### (sockfd=3)
> elaine11.Stanford.EDU:39866
>
> DEBUG:remote_dir=.
>
> DEBUG: reached level 0
> elaine11.Stanford.EDU:39900
>
> ####Accepting a new connection now at port# 39900#### (sockfd=3)
> DEBUG: file/dir DESCRIPTION at level 0 (< 1)
>
> DEBUG: trying to copy file DESCRIPTION to data
> elaine11.Stanford.EDU:39902
>
> ####Accepting a new connection now at port# 39902#### (sockfd=3)
>
> DEBUG: error when creating file data/DESCRIPTION
> ERROR: Permission denied (-1)
>
> I don't understand why it is trying to copy DESCRIPTION and why does it
> give me a permission denied error on the first file in the remote dir.
>
> I had no problems running the server and client on the weekend. But when I
> tried to run it today, I saw this error.
>
> Thanks,
> Anisha
>


.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!anisham
From: Anisha Malhotra 
Newsgroups: su.class.cs244a
Subject: Re: Permission denied
Date: Tue, 11 Feb 2003 12:23:56 -0800
Lines: 67
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044995039 7592 171.64.15.87 (11 Feb 2003 20:23:59 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4506

I was running the ftpd and ftpcopy on the same machine but I switched
machines and the test script is working fine now. I am still getting the
permission denied error if I run the test script from elaine11 but don't
get it when I run the test script from elaine22. I have tried running the
test script from both the machines a couple of times and I get the same
result each time. Any ideas?

Anisha


On Tue, 11 Feb 2003, Keith Simmons wrote:

> Though I am certainly not an authority on the subject, it appears that in
> order to make an object built from their supplied libraries work, you must
> run both ftpd and ftpcopy on the same machine.  This seems to have solved my
> problems with permission denied errors, so hopefully it helps others as
> well.
>
> Keith
>
> "Anisha Malhotra"  wrote in message
> 
> > Hi,
> >
> > I am starting the server using:
> > /usr/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd
> > I am using the provided solution to Assgn #1 and running the client:
> > ./ftpcopy class 2 
> >
> >
> > I get a permission denied error:
> >
> 
> nonymous
> >
> > ####Initiating a new connection now to 171.64.15.76:39891#### (sockfd=3)
> > elaine11.Stanford.EDU:39866
> >
> > DEBUG:remote_dir=.
> >
> > DEBUG: reached level 0
> > elaine11.Stanford.EDU:39900
> >
> > ####Accepting a new connection now at port# 39900#### (sockfd=3)
> > DEBUG: file/dir DESCRIPTION at level 0 (< 1)
> >
> > DEBUG: trying to copy file DESCRIPTION to data
> > elaine11.Stanford.EDU:39902
> >
> > ####Accepting a new connection now at port# 39902#### (sockfd=3)
> >
> > DEBUG: error when creating file data/DESCRIPTION
> > ERROR: Permission denied (-1)
> >
> > I don't understand why it is trying to copy DESCRIPTION and why does it
> > give me a permission denied error on the first file in the remote dir.
> >
> > I had no problems running the server and client on the weekend. But when I
> > tried to run it today, I saw this error.
> >
> > Thanks,
> > Anisha
> >
>
>
>

.

Path: shelby.stanford.edu!elaine28.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: Re: Permission denied
Date: Tue, 11 Feb 2003 12:27:04 -0800
Lines: 66
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine28.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1044995226 7668 171.64.15.103 (11 Feb 2003 20:27:06 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4507

Well, I think I found the problem. It's related to some particular
machine. I used elaine11 last night, only the our.ftpcopy gave me
Permission Denied problem. But today I found both my own ftpcopy and
our.ftpcopy give Permission Denied error. While I'm using elaine28, both
ftpcopies works fine. Hope this can be of help.

Mingying


On Tue, 11 Feb 2003, Keith Simmons wrote:

> Though I am certainly not an authority on the subject, it appears that in
> order to make an object built from their supplied libraries work, you must
> run both ftpd and ftpcopy on the same machine.  This seems to have solved my
> problems with permission denied errors, so hopefully it helps others as
> well.
>
> Keith
>
> "Anisha Malhotra"  wrote in message
> 
> > Hi,
> >
> > I am starting the server using:
> > /usr/class/cs244a/WWW/homeworks/hw2/ftpd_src/src/ftpd
> > I am using the provided solution to Assgn #1 and running the client:
> > ./ftpcopy class 2 
> >
> >
> > I get a permission denied error:
> >
> 
> nonymous
> >
> > ####Initiating a new connection now to 171.64.15.76:39891#### (sockfd=3)
> > elaine11.Stanford.EDU:39866
> >
> > DEBUG:remote_dir=.
> >
> > DEBUG: reached level 0
> > elaine11.Stanford.EDU:39900
> >
> > ####Accepting a new connection now at port# 39900#### (sockfd=3)
> > DEBUG: file/dir DESCRIPTION at level 0 (< 1)
> >
> > DEBUG: trying to copy file DESCRIPTION to data
> > elaine11.Stanford.EDU:39902
> >
> > ####Accepting a new connection now at port# 39902#### (sockfd=3)
> >
> > DEBUG: error when creating file data/DESCRIPTION
> > ERROR: Permission denied (-1)
> >
> > I don't understand why it is trying to copy DESCRIPTION and why does it
> > give me a permission denied error on the first file in the remote dir.
> >
> > I had no problems running the server and client on the weekend. But when I
> > tried to run it today, I saw this error.
> >
> > Thanks,
> > Anisha
> >
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "John C. Wu" 
Newsgroups: su.class.cs244a
Subject: Test Script NOT OK on special cases
Date: Tue, 11 Feb 2003 15:32:18 -0800
Lines: 125
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab400df6.stanford.edu
X-Trace: news.Stanford.EDU 1045006411 14606 171.64.13.246 (11 Feb 2003 23:33:31 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4508

Hi,

Has anybody run into situations in which their standard cases all run fine,
but the special cases (L.1 onwards) do not?

I am using the pre-compiled object files for ftpcopy, but my L.1-L.6 cases
are all failing through time outs.

I tried running the same test outside of the tests outside of the script and
my program seems to run fine.

My L.1 case output is pasted below.  (L.2-L.6 look pretty much the same)

Notice that at the end, it prints "OK: 0 bytes copied" so it seems like the
ftp program is exiting. But the SYN handshake messages show up aftertwards.
Could it be that the child processes are not getting closed properly?
Anybody know of a way to fix that?

Thanks much,
John

----------------------------------------------------------------------
Test L.1 [out of 0.5]
Checks that ftpcopy transfers zero byte file correctly.

Results:  NOT OK

Incorrect program status code -1 (exit code 16777215).  Program output:
***Timeout expired during grading
Program output:


nymous

####Initiating a new connection now to 127.0.0.1:56386#### (sockfd=3)
elaine29.Stanford.EDU:40804

DEBUG:remote_dir=.

DEBUG: reached level 0
elaine29.Stanford.EDU:56391

####Accepting a new connection now at port# 56391#### (sockfd=4)

SYN handshake completed, data_sd=6
DEBUG: file/dir empty.ext at level 0 (< 1)

DEBUG: trying to copy file empty.ext to .
elaine29.Stanford.EDU:56394

####Accepting a new connection now at port# 56394#### (sockfd=4)

SYN handshake completed, data_sd=6

SYN handshake completed, data_sd=8

DEBUG: copied file empty.ext
DEBUG: file/dir empty_dir.ext at level 0 (< 1)

DEBUG: trying to copy file empty_dir.ext to .
elaine29.Stanford.EDU:56396

DEBUG: network error with file/dir empty_dir.ext
DEBUG: file/dir empty_tree.ext at level 0 (< 1)

DEBUG: trying to copy file empty_tree.ext to .
elaine29.Stanford.EDU:56397

DEBUG: network error with file/dir empty_tree.ext
DEBUG: file/dir inaccessible_file.ext at level 0 (< 1)

DEBUG: trying to copy file inaccessible_file.ext to .
elaine29.Stanford.EDU:56398

DEBUG: network error with file/dir inaccessible_file.ext
DEBUG: dir empty_dir.ext at level 1 (< 1)

DEBUG: reached level 1
elaine29.Stanford.EDU:56399

####Accepting a new connection now at port# 56399#### (sockfd=4)

SYN handshake completed, data_sd=6

SYN handshake completed, data_sd=8

SYN handshake completed, data_sd=8
DEBUG: this dir (./empty_dir.ext) had some files (0)
DEBUG: dir empty_tree.ext at level 1 (< 1)

DEBUG: reached level 1
elaine29.Stanford.EDU:56401

####Accepting a new connection now at port# 56401#### (sockfd=4)

SYN handshake completed, data_sd=6

SYN handshake completed, data_sd=8

SYN handshake completed, data_sd=8

SYN handshake completed, data_sd=8
DEBUG: file/dir empty_dir.ext at level 1 (< 1)

DEBUG: trying to copy file empty_dir.ext to ./empty_tree.ext
elaine29.Stanford.EDU:56403

DEBUG: network error with file/dir empty_dir.ext
DEBUG: dir empty_dir.ext at level 2 (< 1)
DEBUG: this dir (./empty_tree.ext) had some files (0)
DEBUG: dir inaccessible_file.ext at level 1 (< 1)
DEBUG: this dir (.) had some files (1)
OK: 0 bytes copied.

SYN handshake completed, data_sd=6

SYN handshake completed, data_sd=8

SYN handshake completed, data_sd=8

SYN handshake completed, data_sd=8

SYN handshake completed, data_sd=8


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: perror and hw 2c
Date: Tue, 11 Feb 2003 18:23:23 -0800
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1045016604 21269 128.12.85.0 (12 Feb 2003 02:23:24 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4509

Today at Matthew's office hours, he noticed I was having a problem that
others were also having.

When transferring a file unreliably, the following would come up:

DEBUG: network error with file/dir rush.jpg
ERROR: Error 0 (-1)

I then noticed that the problem was that a FIN_ACK packet was being dropped,
and the code to handle that was using perror. (All my other debugging output
uses fprintf to stderr). Once I replaced the perror with an fprintf, the
problem went away. Therefore, if anyone else is having this problem with the
provided ftpcopy, check to see if you are calling perror. I'm not sure why
perror causes the problem, but it does.

Btw, an equivalent to perror("s") is fprintf(stderr, "s: %s\n",
strerror(errno));
--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: testscript -- cannot create file
Date: Tue, 11 Feb 2003 18:24:23 -0800
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045016655 21237 171.64.74.37 (12 Feb 2003 02:24:15 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4510

Eric,

did you get this resolved? Trying to switch machines as described in the 
post below is worth trying. Also make sure there are no local files with 
the same name that are write protected.

   Guido

Eric Chenjian Xu wrote:
> Yesterday when I ran the testscript, my program passed all the tests.
> Today, before I was about to submit it, I ran the script again, got the
> following messages.  And most of the test results are "NOT TESTED".
> Ideas?  Thanks.
> 
> DEBUG: file/dir Makefile at level 0 (< 3)
> 
> DEBUG: trying to copy file Makefile to localhost_c_3_0
> elaine14.Stanford.EDU:54289
> 
> ####Accepting a new connection now at port# 54289#### (sockfd=4)
> 
> DEBUG: error when creating file localhost_c_3_0/Makefile
> ERROR: Permission denied
> 
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: test result when using provided object files
Date: Tue, 11 Feb 2003 18:28:18 -0800
Lines: 59
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045016891 21237 171.64.74.37 (12 Feb 2003 02:28:11 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4511

Mingying,

to avoif this in the future, keep an eye on the load of your machines. 
If it is over 3, the OS tends to be unhappt :-)

   Guido

Mingying Chen wrote:
> Hi,
> 
> I had a same set of test result as the one mentioned in "Problem with test
> C for 2.C" when I run my test script with the given object files, ie, 2.C
> failed and all subsequent tests are NOT TESTED. But when I use my own
> modified ftpcopy.c, everything works fine and all tests in script passed.
> I'm just wondering why this could happen, ie, using my transport layer, my
> ftpclient can talk to provided ftpserver, but provided ftpclient can not
> talk to provided ftpserver.
> 
> The following is the running result from provided client side: (I have a
> src directory with a.gz, b.gz and c.gz in it; and an empty dst directory
> in current running directory. Similar run test with my own ftpcopy was
> fine.)
> 
> ================================================================================
> 
> elaine11:/tmp/mingying> ./our.ftpcopy gz 1 
> 
> 
> elaine11.Stanford.EDU:39814
> 
> DEBUG:remote_dir=src
> 
> DEBUG: reached level 0
> elaine11.Stanford.EDU:39771
> DEBUG: file/dir a.gz at level 0 (< 1)
> 
> DEBUG: trying to copy file a.gz to dst
> elaine11.Stanford.EDU:39773
> 
> DEBUG: error when creating file dst/a.gz
> ERROR: Permission denied (-1)
> 
> ==================================================================================
> 
> It seems the problem occurs when client side trying to create file a.gz so
> the parent close local_data_sd and exit. In this case, the child will send
> FIN to server side. Indeed, I saw in server side got FIN and send FIN_ACK
> before exit. I think this type of error shouldn't be because of my
> transport layer, yet why other students can pass the test script using the
> provided object files? I'm really confused.
> 
> BTW, since we can change Makefile to make it work with our own ftpcopy, is
> that required that our code also have towork with the provided object
> files?
> 
> Thanks.
> Mingying
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Test Script NOT OK on special cases
Date: Tue, 11 Feb 2003 18:29:40 -0800
Lines: 132
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045016972 21237 171.64.74.37 (12 Feb 2003 02:29:32 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4512

Hard to debug with this little data. What's the output if you run it 
outside the test script?

   Guido

John C. Wu wrote:
> Hi,
> 
> Has anybody run into situations in which their standard cases all run fine,
> but the special cases (L.1 onwards) do not?
> 
> I am using the pre-compiled object files for ftpcopy, but my L.1-L.6 cases
> are all failing through time outs.
> 
> I tried running the same test outside of the tests outside of the script and
> my program seems to run fine.
> 
> My L.1 case output is pasted below.  (L.2-L.6 look pretty much the same)
> 
> Notice that at the end, it prints "OK: 0 bytes copied" so it seems like the
> ftp program is exiting. But the SYN handshake messages show up aftertwards.
> Could it be that the child processes are not getting closed properly?
> Anybody know of a way to fix that?
> 
> Thanks much,
> John
> 
> ----------------------------------------------------------------------
> Test L.1 [out of 0.5]
> Checks that ftpcopy transfers zero byte file correctly.
> 
> Results:  NOT OK
> 
> Incorrect program status code -1 (exit code 16777215).  Program output:
> ***Timeout expired during grading
> Program output:
> 
> 
> nymous
> 
> ####Initiating a new connection now to 127.0.0.1:56386#### (sockfd=3)
> elaine29.Stanford.EDU:40804
> 
> DEBUG:remote_dir=.
> 
> DEBUG: reached level 0
> elaine29.Stanford.EDU:56391
> 
> ####Accepting a new connection now at port# 56391#### (sockfd=4)
> 
> SYN handshake completed, data_sd=6
> DEBUG: file/dir empty.ext at level 0 (< 1)
> 
> DEBUG: trying to copy file empty.ext to .
> elaine29.Stanford.EDU:56394
> 
> ####Accepting a new connection now at port# 56394#### (sockfd=4)
> 
> SYN handshake completed, data_sd=6
> 
> SYN handshake completed, data_sd=8
> 
> DEBUG: copied file empty.ext
> DEBUG: file/dir empty_dir.ext at level 0 (< 1)
> 
> DEBUG: trying to copy file empty_dir.ext to .
> elaine29.Stanford.EDU:56396
> 
> DEBUG: network error with file/dir empty_dir.ext
> DEBUG: file/dir empty_tree.ext at level 0 (< 1)
> 
> DEBUG: trying to copy file empty_tree.ext to .
> elaine29.Stanford.EDU:56397
> 
> DEBUG: network error with file/dir empty_tree.ext
> DEBUG: file/dir inaccessible_file.ext at level 0 (< 1)
> 
> DEBUG: trying to copy file inaccessible_file.ext to .
> elaine29.Stanford.EDU:56398
> 
> DEBUG: network error with file/dir inaccessible_file.ext
> DEBUG: dir empty_dir.ext at level 1 (< 1)
> 
> DEBUG: reached level 1
> elaine29.Stanford.EDU:56399
> 
> ####Accepting a new connection now at port# 56399#### (sockfd=4)
> 
> SYN handshake completed, data_sd=6
> 
> SYN handshake completed, data_sd=8
> 
> SYN handshake completed, data_sd=8
> DEBUG: this dir (./empty_dir.ext) had some files (0)
> DEBUG: dir empty_tree.ext at level 1 (< 1)
> 
> DEBUG: reached level 1
> elaine29.Stanford.EDU:56401
> 
> ####Accepting a new connection now at port# 56401#### (sockfd=4)
> 
> SYN handshake completed, data_sd=6
> 
> SYN handshake completed, data_sd=8
> 
> SYN handshake completed, data_sd=8
> 
> SYN handshake completed, data_sd=8
> DEBUG: file/dir empty_dir.ext at level 1 (< 1)
> 
> DEBUG: trying to copy file empty_dir.ext to ./empty_tree.ext
> elaine29.Stanford.EDU:56403
> 
> DEBUG: network error with file/dir empty_dir.ext
> DEBUG: dir empty_dir.ext at level 2 (< 1)
> DEBUG: this dir (./empty_tree.ext) had some files (0)
> DEBUG: dir inaccessible_file.ext at level 1 (< 1)
> DEBUG: this dir (.) had some files (1)
> OK: 0 bytes copied.
> 
> SYN handshake completed, data_sd=6
> 
> SYN handshake completed, data_sd=8
> 
> SYN handshake completed, data_sd=8
> 
> SYN handshake completed, data_sd=8
> 
> SYN handshake completed, data_sd=8
> 
> 

.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Lectures Covered on Midterm
Date: Wed, 12 Feb 2003 04:03:06 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1045022586 24768 171.64.15.77 (12 Feb 2003 04:03:06 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4513

All material through today's lecture (Tuesday, Feb. 11)
may be tested by the midterm on Thursday.

Good luck on the midterm!

SteveJ

.

Path: shelby.stanford.edu!elaine27.Stanford.EDU!pavan
From: Pavan Singitham 
Newsgroups: su.class.cs244a
Subject: Re: Test Script NOT OK on special cases
Date: Tue, 11 Feb 2003 21:06:12 -0800
Lines: 148
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine27.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045026374 26836 171.64.15.102 (12 Feb 2003 05:06:14 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4514

Hi,
  I got a similar problem. I was not initializing a variable but checking
for its value just before sending a FIN.
  Put dprintfs in ur program and check what's happenning..
  If u want to use dprintf in ur ftpd, change the -UDEBUG flag in your
makefile to DDEBUG , otherwize ur ftpd doesn't print the debug messages.
hope this helps. good luck
Pavan
On Tue, 11 Feb 2003, Guido Appenzeller wrote:

> Hard to debug with this little data. What's the output if you run it
> outside the test script?
>
>    Guido
>
> John C. Wu wrote:
> > Hi,
> >
> > Has anybody run into situations in which their standard cases all run fine,
> > but the special cases (L.1 onwards) do not?
> >
> > I am using the pre-compiled object files for ftpcopy, but my L.1-L.6 cases
> > are all failing through time outs.
> >
> > I tried running the same test outside of the tests outside of the script and
> > my program seems to run fine.
> >
> > My L.1 case output is pasted below.  (L.2-L.6 look pretty much the same)
> >
> > Notice that at the end, it prints "OK: 0 bytes copied" so it seems like the
> > ftp program is exiting. But the SYN handshake messages show up aftertwards.
> > Could it be that the child processes are not getting closed properly?
> > Anybody know of a way to fix that?
> >
> > Thanks much,
> > John
> >
> > ----------------------------------------------------------------------
> > Test L.1 [out of 0.5]
> > Checks that ftpcopy transfers zero byte file correctly.
> >
> > Results:  NOT OK
> >
> > Incorrect program status code -1 (exit code 16777215).  Program output:
> > ***Timeout expired during grading
> > Program output:
> >
> > 
> > nymous
> >
> > ####Initiating a new connection now to 127.0.0.1:56386#### (sockfd=3)
> > elaine29.Stanford.EDU:40804
> >
> > DEBUG:remote_dir=.
> >
> > DEBUG: reached level 0
> > elaine29.Stanford.EDU:56391
> >
> > ####Accepting a new connection now at port# 56391#### (sockfd=4)
> >
> > SYN handshake completed, data_sd=6
> > DEBUG: file/dir empty.ext at level 0 (< 1)
> >
> > DEBUG: trying to copy file empty.ext to .
> > elaine29.Stanford.EDU:56394
> >
> > ####Accepting a new connection now at port# 56394#### (sockfd=4)
> >
> > SYN handshake completed, data_sd=6
> >
> > SYN handshake completed, data_sd=8
> >
> > DEBUG: copied file empty.ext
> > DEBUG: file/dir empty_dir.ext at level 0 (< 1)
> >
> > DEBUG: trying to copy file empty_dir.ext to .
> > elaine29.Stanford.EDU:56396
> >
> > DEBUG: network error with file/dir empty_dir.ext
> > DEBUG: file/dir empty_tree.ext at level 0 (< 1)
> >
> > DEBUG: trying to copy file empty_tree.ext to .
> > elaine29.Stanford.EDU:56397
> >
> > DEBUG: network error with file/dir empty_tree.ext
> > DEBUG: file/dir inaccessible_file.ext at level 0 (< 1)
> >
> > DEBUG: trying to copy file inaccessible_file.ext to .
> > elaine29.Stanford.EDU:56398
> >
> > DEBUG: network error with file/dir inaccessible_file.ext
> > DEBUG: dir empty_dir.ext at level 1 (< 1)
> >
> > DEBUG: reached level 1
> > elaine29.Stanford.EDU:56399
> >
> > ####Accepting a new connection now at port# 56399#### (sockfd=4)
> >
> > SYN handshake completed, data_sd=6
> >
> > SYN handshake completed, data_sd=8
> >
> > SYN handshake completed, data_sd=8
> > DEBUG: this dir (./empty_dir.ext) had some files (0)
> > DEBUG: dir empty_tree.ext at level 1 (< 1)
> >
> > DEBUG: reached level 1
> > elaine29.Stanford.EDU:56401
> >
> > ####Accepting a new connection now at port# 56401#### (sockfd=4)
> >
> > SYN handshake completed, data_sd=6
> >
> > SYN handshake completed, data_sd=8
> >
> > SYN handshake completed, data_sd=8
> >
> > SYN handshake completed, data_sd=8
> > DEBUG: file/dir empty_dir.ext at level 1 (< 1)
> >
> > DEBUG: trying to copy file empty_dir.ext to ./empty_tree.ext
> > elaine29.Stanford.EDU:56403
> >
> > DEBUG: network error with file/dir empty_dir.ext
> > DEBUG: dir empty_dir.ext at level 2 (< 1)
> > DEBUG: this dir (./empty_tree.ext) had some files (0)
> > DEBUG: dir inaccessible_file.ext at level 1 (< 1)
> > DEBUG: this dir (.) had some files (1)
> > OK: 0 bytes copied.
> >
> > SYN handshake completed, data_sd=6
> >
> > SYN handshake completed, data_sd=8
> >
> > SYN handshake completed, data_sd=8
> >
> > SYN handshake completed, data_sd=8
> >
> > SYN handshake completed, data_sd=8
> >
> >
>
>

---
www.stanford.edu/~pavan
Help stamp out and abolish redundancy and repetition.

.

Path: shelby.stanford.edu!elaine28.Stanford.EDU!mingying
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: missing assignment#1 score on web
Date: Tue, 11 Feb 2003 22:18:13 -0800
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine28.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045030697 29371 171.64.15.103 (12 Feb 2003 06:18:17 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4515

Hi,

I just checked my grade online and saw my score under assignment #1 is
N/A, while I did receive the email telling me my score a while ago. I'm
wondering if some scores are not entered into the database yet, or it's
just me. Please let me know if there's anything I should do if it's the
latter case.

Thanks.
Mingying

.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: Re: testscript -- cannot create file
Date: Tue, 11 Feb 2003 22:51:56 -0800
Lines: 33
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045032719 369 171.64.15.78 (12 Feb 2003 06:51:59 GMT)
X-Complaints-To: 
To: Guido Appenzeller 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4516

Yes, switching to another machine made things work.
Eric
On Tue, 11 Feb 2003, Guido Appenzeller wrote:

> Eric,
>
> did you get this resolved? Trying to switch machines as described in the
> post below is worth trying. Also make sure there are no local files with
> the same name that are write protected.
>
>    Guido
>
> Eric Chenjian Xu wrote:
> > Yesterday when I ran the testscript, my program passed all the tests.
> > Today, before I was about to submit it, I ran the script again, got the
> > following messages.  And most of the test results are "NOT TESTED".
> > Ideas?  Thanks.
> >
> > DEBUG: file/dir Makefile at level 0 (< 3)
> >
> > DEBUG: trying to copy file Makefile to localhost_c_3_0
> > elaine14.Stanford.EDU:54289
> >
> > ####Accepting a new connection now at port# 54289#### (sockfd=4)
> >
> > DEBUG: error when creating file localhost_c_3_0/Makefile
> > ERROR: Permission denied
> >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: Lectures Covered on Midterm
Date: Tue, 11 Feb 2003 23:22:19 -0800
Lines: 5
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045034511 1199 128.12.72.54 (12 Feb 2003 07:21:51 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4517

Previous midterms seem to be closed-book, closed-note... but last year's 
allowed a single 8 1/2 x 11 sheet of notes.

Are we allowed any notes on this year's midterm?

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!renedieu
From: Rene Nahele Patnode 
Newsgroups: su.class.cs244a
Subject: Using own ftpcopy
Date: Tue, 11 Feb 2003 23:51:40 -0800
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine31.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045036309 2029 171.64.15.106 (12 Feb 2003 07:51:49 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4518

If we use our own ftpcopy, I'm assuming that the code for that won't count
against our style points, will it?

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: Lectures Covered on Midterm
Date: Wed, 12 Feb 2003 00:09:40 -0800
Lines: 14
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045037381 3154 171.64.15.85 (12 Feb 2003 08:09:41 GMT)
X-Complaints-To: 
To: Kevin Christopher 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4519

Nick said we could have 1 side of an 8 1/2 x 11 sheet of notes
for the midterm, and 2 sides for the final.

- Erik

On Tue, 11 Feb 2003, Kevin Christopher wrote:

> Previous midterms seem to be closed-book, closed-note... but last year's
> allowed a single 8 1/2 x 11 sheet of notes.
>
> Are we allowed any notes on this year's midterm?
>
>

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: perror and hw 2c
Date: Wed, 12 Feb 2003 09:03:39 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1045040619 4732 171.64.15.107 (12 Feb 2003 09:03:39 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4521

I notice that one of the mysocket header files (rather curiously--I might
even say stupidly, because there seems to be absolutely no reason for this)
defines perror to write to stdout.  If you were using the ftpd built with your
transport layer, I could see how this would confuse things (although if
the perror's done on the ftpcopy side, I don't see why there'd be any
problem).

Thanks for pointing this out.

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: test result when using provided object files
Date: Wed, 12 Feb 2003 09:07:21 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1045040841 4803 171.64.15.107 (12 Feb 2003 09:07:21 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4522


>BTW, since we can change Makefile to make it work with our own ftpcopy, is
>that required that our code also have towork with the provided object
>files?

No, we'll just build whichever version of ftpcopy you chose based on your
Makefile ftpcopy rule.  It doesn't make any sense to me that your transport
layer would work only with your ftpcopy, and not the provided one, so as
Guido mentioned, I might suspect some transient problem.

.

Path: shelby.stanford.edu!elaine32.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Using own ftpcopy
Date: Wed, 12 Feb 2003 09:08:23 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine32.stanford.edu
X-Trace: news.Stanford.EDU 1045040903 4851 171.64.15.107 (12 Feb 2003 09:08:23 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4523


>If we use our own ftpcopy, I'm assuming that the code for that won't count
>against our style points, will it?

No, we won't re-penalize you for past mistakes!
.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: problem 5c in sample midterm 2001
Date: Wed, 12 Feb 2003 01:36:12 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045042573 5384 171.64.15.76 (12 Feb 2003 09:36:13 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4524

The solution says we can ignore the L2 link, but the outgoing link is
faster than L1.  That means after the outgoing link delivers a packet from
L1 (spending time 2N/3R), we still have time N/R - 2N/3R = N/3R before
the next packet from L1 arrives.  The outgoing link will spend N/2R time
to deliver a packet from L2.  When the next packet from L1 arrives, it
needs to wait N/2R - N/3R = N/6R to allow the transmission of the L2
packet to finish.
Why is the waiting time ignored here?  Are we assuming we can cut off a
transmission of a packet?  Am I missing something here?

Eric



.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: Re: problem 5c in sample midterm 2001
Date: Wed, 12 Feb 2003 01:54:21 -0800
Lines: 33
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045043666 5742 171.64.15.76 (12 Feb 2003 09:54:26 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4525

I had some miscalculation in the previous email, but my question still
stands.

> The outgoing link will spend N/2R time
> to deliver a packet from L2.  When the next packet from L1 arrives, it
> needs to wait N/2R - N/3R = N/6R to allow the transmission of the L2
> packet to finish.

Instead of N/2R, the outgoing link should should spend 2N/3R time to
deliver a packet from L2.  Therefore, the packet from L1 needs
to wait 4N/3R - N/R = N/3R.  ...

Eric

On Wed, 12 Feb 2003, Eric Chenjian Xu wrote:

> The solution says we can ignore the L2 link, but the outgoing link is
> faster than L1.  That means after the outgoing link delivers a packet from
> L1 (spending time 2N/3R), we still have time N/R - 2N/3R = N/3R before
> the next packet from L1 arrives.  The outgoing link will spend N/2R time
> to deliver a packet from L2.  When the next packet from L1 arrives, it
> needs to wait N/2R - N/3R = N/6R to allow the transmission of the L2
> packet to finish.
> Why is the waiting time ignored here?  Are we assuming we can cut off a
> transmission of a packet?  Am I missing something here?
>
> Eric
>
>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Ramesh Balakrishnan" 
Newsgroups: su.class.cs244a
Subject: Timeouts and retransmissions
Date: Wed, 12 Feb 2003 02:59:24 -0800
Lines: 34
Distribution: su
Message-ID: 
NNTP-Posting-Host: boltblaster.stanford.edu
X-Trace: news.Stanford.EDU 1045047565 7521 128.12.71.90 (12 Feb 2003 10:59:25 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4526

I've been trying to fix a bug with part 2 of my program and there are some
things that still aren't clear to me. I've read all the postings that I
could find on the subject, so here goes:

From what I gather, a number of the test scripts fail due to timeouts (i.e.
the 5 retransmissions allowed are exceeded). This happens when one
increments the retransmission counts for subsequent segments (N onwards)
while implementing the Go-Back-N strategy. Is this what others have
experienced as well or am I doing something wrong?

I got around the "timeouts" problem by either not incrementing the
retransmission count or by increasing the number of allowed retransmissions
from 5 to say 15. In these cases, I pass all tests except for 2.H which
obviously fails due to segments being transmitted more than 5 times. Doing
things the 'correct' way (with 5 retransmissions and incrementing the
retransmission count on a go-back-n) results in some of the other tests
failing with broken pipe errors. Not all bytes get transferred due to the
fact that the allowed retransmissions has been exceeded (this happens only
for large files). Is this acceptable behavior? I would think not but am
positively stumped.

On a related note, the handout states that if a segment is retransmitted 5
times, then the network is assumed to have "failed" and the "network
terminated". Does this mean we directly exit the child thread after cleaning
up or do we still have to go through the FIN-ACK sequence? If the network
has failed, what sense would that make?

I don't want bugs from part 2 messing around with part 3 and would
appreciate any help,

Thanks,
Ramesh


.

Path: shelby.stanford.edu!not-for-mail
From: Dale Neal 
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Wed, 12 Feb 2003 05:29:05 -0800
Lines: 19
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: masamune.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045056560 12530 128.12.110.70 (12 Feb 2003 13:29:20 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4527

Rene-
Did you ever fix this problem? When I submitted my hw2b it was running 
fine, but now it has this same bug when I run it against the test 
script, and I believe this is causing it to hang on the hw2c test script 
as well. In my code, I have traced the bug down, and it appears that the 
crash is occuring _inside_ a call to network_recv(). I'm passing it a 
valid buffer (array on the stack) and a valid socket and a valid size. I 
have run purify and nothing comes up, so I'm pretty sure I'm not messing 
up the freelist or overwriting anything important.

TAs-
Any ideas on this bug? I'm tempted to just turn in my hw3c as it is 
right now, as I can transfer directories filled with 15+ MB files on my 
own with it. But, when I run the script on it, it hangs due to this bug. 
A quick ps -A on every machine I go to shows at least 10 zombied 
client.r programs running.

-Dale

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Wed, 12 Feb 2003 18:50:27 +0000 (UTC)
Lines: 28
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1045075827 21276 171.64.15.106 (12 Feb 2003 18:50:27 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4528

Dale Neal  writes:

>Rene-
>Did you ever fix this problem? When I submitted my hw2b it was running 
>fine, but now it has this same bug when I run it against the test 
>script, and I believe this is causing it to hang on the hw2c test script 
>as well. In my code, I have traced the bug down, and it appears that the 
>crash is occuring _inside_ a call to network_recv(). I'm passing it a 
>valid buffer (array on the stack) and a valid socket and a valid size. I 
>have run purify and nothing comes up, so I'm pretty sure I'm not messing 
>up the freelist or overwriting anything important.

>TAs-
>Any ideas on this bug? I'm tempted to just turn in my hw3c as it is 
>right now, as I can transfer directories filled with 15+ MB files on my 
>own with it. But, when I run the script on it, it hangs due to this bug. 
>A quick ps -A on every machine I go to shows at least 10 zombied 
>client.r programs running.

These are your client.retrans, or other people's?

Someone had mentioned a problem that manifested itself due to network_recv()
due to the fact that it calls print_congestion_window_and_etc(), so if you do
have a problem this might be a likely culprit.  Otherwise, network_recv()
is pretty innocuous; it doesn't do a lot more than recv() into the buffer
and logging of the received packet to a file.

Does your ftpcopy/ftpd pair work with the exact arguments the script uses?
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Stumped on PartC: the PASV call is failing w/ my client
Date: Wed, 12 Feb 2003 11:23:19 -0800
Lines: 35
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045077801 22633 171.64.15.82 (12 Feb 2003 19:23:21 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4529

When I try to use my own client (w/ ftpd and ftpcopy) on
the same machine, whenever I get the return from PASV
the answer is something like this: (127,0,0,1,255,140)
But whenever I send a SYN there is never a response, so
I get to 5 retransmissions and kill the network layer.B



Then when I try to use the provided ftpcopy w/ the given
ftpd, the daemon exits before it can receive the final
data ACK from the client.  The only clue I have into this
behavior (which doesn't happen w/ client.c and server.c)
is this error:

exiting on signal 11  --> SIGSEGV
retrieve(): closed socket after sending data

My ftpd transport layer doesn't the first FIN since I'm waiting
for the last ACK to come back.  So I should be looping around
in the ctrl loop.  The client sends the ACK, but I don't recieve
it, and then the code drops out immediately.  Any ideas? This
also doesn't happen with client.c/server.c.

I tried instrumenting the ftpd code w/ purify, but I didn't
see any memory errors I would have caused.

Any help is appreciated.  I've spent _hours_ trying to get
something to work.

thanks,

- Erik



.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: Stumped on PartC: the PASV call is failing w/ my client
Date: Wed, 12 Feb 2003 11:27:38 -0800
Lines: 56
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045078059 22737 171.64.15.74 (12 Feb 2003 19:27:39 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4530


Also, when I try using ftpd w/ my ftpcopy on separate
machines, the PASV response is 127.0.0.1 (which is
incorrect).  I recall a post on the newsgroup stating we
should run 'em on the same machine.

In the 'changes necessary for milestone 3' page, there
is a list of things we need to do to make our ftpcopy work.
I do not understand the bulleted list at the bottom, especially
'check for the server response again to verify for success'.

For those of us who took the advice on this very newsgroup
and used PASV, do we now have to revisit that decision
and try to use PORT?

- Erik

On Wed, 12 Feb 2003, Erik Damian Weathers wrote:

> When I try to use my own client (w/ ftpd and ftpcopy) on
> the same machine, whenever I get the return from PASV
> the answer is something like this: (127,0,0,1,255,140)
> But whenever I send a SYN there is never a response, so
> I get to 5 retransmissions and kill the network layer.B
>
>
>
> Then when I try to use the provided ftpcopy w/ the given
> ftpd, the daemon exits before it can receive the final
> data ACK from the client.  The only clue I have into this
> behavior (which doesn't happen w/ client.c and server.c)
> is this error:
>
> exiting on signal 11  --> SIGSEGV
> retrieve(): closed socket after sending data
>
> My ftpd transport layer doesn't the first FIN since I'm waiting
> for the last ACK to come back.  So I should be looping around
> in the ctrl loop.  The client sends the ACK, but I don't recieve
> it, and then the code drops out immediately.  Any ideas? This
> also doesn't happen with client.c/server.c.
>
> I tried instrumenting the ftpd code w/ purify, but I didn't
> see any memory errors I would have caused.
>
> Any help is appreciated.  I've spent _hours_ trying to get
> something to work.
>
> thanks,
>
> - Erik
>
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Ramesh Balakrishnan" 
Newsgroups: su.class.cs244a
Subject: problem with test quota restrictions
Date: Wed, 12 Feb 2003 12:40:03 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: boltblaster.stanford.edu
X-Trace: news.Stanford.EDU 1045082405 25217 128.12.71.90 (12 Feb 2003 20:40:05 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4531

I ran several 2b tests, and now the script won't let me run a single 2c
test. I thought the quota of tests was always for the current due project.
Could you please look into this?

Here's the error message:

Daily quota of 3 test attempts applies (from Feb 12 onwards).
You've used 6 test attempt(s) so far today.
Sorry, you've exceeded your current test quota!
couldn't submit code for testing

-Ramesh


.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: problem with test quota restrictions
Date: Wed, 12 Feb 2003 13:11:19 -0800
Lines: 29
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045084280 26239 171.64.15.82 (12 Feb 2003 21:11:20 GMT)
X-Complaints-To: 
To: Ramesh Balakrishnan 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4532

Ramesh,

This is the intended behavior, per some earlier postings
by Matthew.  I don't quite understand why we can't run
5000 tests against 2B at this point, and then have
our allotted quota for 2C separate from those tests.
But that is just the way it is.

- Erik


On Wed, 12 Feb 2003, Ramesh Balakrishnan wrote:

> I ran several 2b tests, and now the script won't let me run a single 2c
> test. I thought the quota of tests was always for the current due project.
> Could you please look into this?
>
> Here's the error message:
>
> Daily quota of 3 test attempts applies (from Feb 12 onwards).
> You've used 6 test attempt(s) so far today.
> Sorry, you've exceeded your current test quota!
> couldn't submit code for testing
>
> -Ramesh
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Dale Neal 
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Wed, 12 Feb 2003 13:18:55 -0800
Lines: 31
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: masamune.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045084749 26441 128.12.110.70 (12 Feb 2003 21:19:09 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4533


> These are your client.retrans, or other people's?

Some could certainly be mine but I'm assuming other people's as well, as 
I find them all over machines I haven't been working on.


> Someone had mentioned a problem that manifested itself due to network_recv()
> due to the fact that it calls print_congestion_window_and_etc(), so if you do
> have a problem this might be a likely culprit.  Otherwise, network_recv()
> is pretty innocuous; it doesn't do a lot more than recv() into the buffer
> and logging of the received packet to a file.

Hmm. I'll look into that, but I can't imagine how that could be a 
problem. The weird thing is that I cannot re-create the bug myself. This 
bug only occurs when I run my transport.c through the script, and then, 
only when my program is running as the client. When it goes to read the 
very first SYN packet, the child process unceremoniously dies in the 
network_recv() call.


> Does your ftpcopy/ftpd pair work with the exact arguments the script uses?

What are the arguments the script uses? Unfortunately I didn't think to 
copy it down, and I only have one script run left and I don't want to 
waste it.

Thanks.

-Dale

.

Path: shelby.stanford.edu!elaine23.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Sample midterm 2002: problem 1b(i)
Date: Wed, 12 Feb 2003 13:48:57 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine23.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045086538 27420 171.64.15.98 (12 Feb 2003 21:48:58 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4534

for this problem, I still dont see the connection between the average
number of customers waiting (i.e. queue length) and the average service
rate (i.e. R).

from the problem statement, on average, one new customer per minute buys a
DVD. is this implying the arrival rate of the system is D (bytes per sec)?

the explanation in the solution did not explicitly explain the
quantitative relationship between arrival rate and departure rate.

any thoughts? thanks!

Tan

.

Path: shelby.stanford.edu!not-for-mail
From: Dale Neal 
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Wed, 12 Feb 2003 13:53:06 -0800
Lines: 15
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: masamune.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045086800 27607 128.12.110.70 (12 Feb 2003 21:53:20 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4535


> Someone had mentioned a problem that manifested itself due to network_recv()
> due to the fact that it calls print_congestion_window_and_etc(), so if you do
> have a problem this might be a likely culprit.

This is the exact problem. I'm using get_glob_ctx_local_data_pipe(fid) 
to get the context. But this only works after transfer_init() has 
completed. It also explains why I can't re-create the problem, as the 
non-script version of network.c doesn't call 
print_congestion_window_and_estimatedRTT(fid).

Thanks again.

-Dale

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Wed, 12 Feb 2003 14:13:51 -0800
Lines: 25
Distribution: su
Message-ID: 
References:     
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1045088032 28305 128.12.85.0 (12 Feb 2003 22:13:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4536

We can just use curr_ctx here, right? That's the first thing that is set in
the child process, and should always be defined from the perspective of the
network layer when it calss print_congestion..., right?

"Dale Neal"  wrote in message

>
> > Someone had mentioned a problem that manifested itself due to
network_recv()
> > due to the fact that it calls print_congestion_window_and_etc(), so if
you do
> > have a problem this might be a likely culprit.
>
> This is the exact problem. I'm using get_glob_ctx_local_data_pipe(fid)
> to get the context. But this only works after transfer_init() has
> completed. It also explains why I can't re-create the problem, as the
> non-script version of network.c doesn't call
> print_congestion_window_and_estimatedRTT(fid).
>
> Thanks again.
>
> -Dale
>


.

Path: shelby.stanford.edu!not-for-mail
From: Dale Neal 
Newsgroups: su.class.cs244a
Subject: Re: Problem with testclient
Date: Wed, 12 Feb 2003 15:01:15 -0800
Lines: 8
Distribution: su
Message-ID: 
References:      
NNTP-Posting-Host: masamune.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045090888 29933 128.12.110.70 (12 Feb 2003 23:01:28 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4537

Rene Patnode wrote:
> We can just use curr_ctx here, right? That's the first thing that is set in
> the child process, and should always be defined from the perspective of the
> network layer when it calss print_congestion..., right?

Yep. That's how I fixed it. *crosses fingers and submits* =)
-Dale

.

Path: shelby.stanford.edu!not-for-mail
From: wmagrath 
Newsgroups: su.class.cs244a
Subject: Frustration with test quota restrictions
Date: Wed, 12 Feb 2003 15:44:57 -0800
Lines: 127
Distribution: su
Message-ID: 
References:  
Reply-To:  
NNTP-Posting-Host: dn800cb809.stanford.edu
Mime-Version: 1.0
Content-Type: multipart/alternative;
 boundary="------------090000060302070400010500"
X-Trace: news.Stanford.EDU 1045093554 1511 128.12.184.9 (12 Feb 2003 23:45:54 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4538


--------------090000060302070400010500
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

I am quite frustrated that since I ran more than 3 part B tests today, I 
can't run a single part C test.  The very fact that part B has a quota 
of 5000 test runs and part C has a quota of only 3 certainly implies 
that we have different test quotas for each subsection of the 
assignment.  It never even crossed my mind that testing my part B today 
would prevent me from testing part C today.  

Its so frustrating to think you are saving your part C tests by not 
running them then suddenly you don't have any part C tests at all.

-Bill



Erik Damian Weathers wrote:

>Ramesh,
>
>This is the intended behavior, per some earlier postings
>by Matthew.  I don't quite understand why we can't run
>5000 tests against 2B at this point, and then have
>our allotted quota for 2C separate from those tests.
>But that is just the way it is.
>
>- Erik
>
>
>On Wed, 12 Feb 2003, Ramesh Balakrishnan wrote:
>
>  
>
>>I ran several 2b tests, and now the script won't let me run a single 2c
>>test. I thought the quota of tests was always for the current due project.
>>Could you please look into this?
>>
>>Here's the error message:
>>
>>Daily quota of 3 test attempts applies (from Feb 12 onwards).
>>You've used 6 test attempt(s) so far today.
>>Sorry, you've exceeded your current test quota!
>>couldn't submit code for testing
>>
>>-Ramesh
>>
>>
>>
>>    
>>
>
>  
>


--------------090000060302070400010500
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
  <title></title>
</head>
<body>
I am quite frustrated that since I ran more than 3 part B tests today, I
can't run a single part C test.  The very fact that part B has a quota of
5000 test runs and part C has a quota of only 3 certainly implies that we
have different test quotas for each subsection of the assignment.  It never
even crossed my mind that testing my part B today would prevent me from testing
part C today.  <br>
<br>
Its so frustrating to think you are saving your part C tests by not running
them then suddenly you don't have any part C tests at all.<br>
<br>
-Bill<br>
<br>
<br>
<br>
Erik Damian Weathers wrote:<br>
<blockquote type="cite"
 
  <pre wrap="">Ramesh,

This is the intended behavior, per some earlier postings
by Matthew.  I don't quite understand why we can't run
5000 tests against 2B at this point, and then have
our allotted quota for 2C separate from those tests.
But that is just the way it is.

- Erik


On Wed, 12 Feb 2003, Ramesh Balakrishnan wrote:

  </pre>
  <blockquote type="cite">
    <pre wrap="">I ran several 2b tests, and now the script won't let me run a single 2c
test. I thought the quota of tests was always for the current due project.
Could you please look into this?

Here's the error message:

Daily quota of 3 test attempts applies (from Feb 12 onwards).
You've used 6 test attempt(s) so far today.
Sorry, you've exceeded your current test quota!
couldn't submit code for testing

-Ramesh



    </pre>
  </blockquote>
  <pre wrap=""><!---->
  </pre>
</blockquote>
<br>
</body>
</html>

--------------090000060302070400010500--

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: Frustration with test quota restrictions
Date: Wed, 12 Feb 2003 17:42:10 -0800
Lines: 61
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045100532 5885 171.64.15.100 (13 Feb 2003 01:42:12 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4539

Haha, I thought I was the only one who has this pattern of logic. See my
original post a few days ago on this issue.

Jichun

On Wed, 12 Feb 2003, wmagrath wrote:

> I am quite frustrated that since I ran more than 3 part B tests today, I
> can't run a single part C test.  The very fact that part B has a quota
> of 5000 test runs and part C has a quota of only 3 certainly implies
> that we have different test quotas for each subsection of the
> assignment.  It never even crossed my mind that testing my part B today
> would prevent me from testing part C today.
>
> Its so frustrating to think you are saving your part C tests by not
> running them then suddenly you don't have any part C tests at all.
>
> -Bill
>
>
>
> Erik Damian Weathers wrote:
>
> >Ramesh,
> >
> >This is the intended behavior, per some earlier postings
> >by Matthew.  I don't quite understand why we can't run
> >5000 tests against 2B at this point, and then have
> >our allotted quota for 2C separate from those tests.
> >But that is just the way it is.
> >
> >- Erik
> >
> >
> >On Wed, 12 Feb 2003, Ramesh Balakrishnan wrote:
> >
> >
> >
> >>I ran several 2b tests, and now the script won't let me run a single 2c
> >>test. I thought the quota of tests was always for the current due project.
> >>Could you please look into this?
> >>
> >>Here's the error message:
> >>
> >>Daily quota of 3 test attempts applies (from Feb 12 onwards).
> >>You've used 6 test attempt(s) so far today.
> >>Sorry, you've exceeded your current test quota!
> >>couldn't submit code for testing
> >>
> >>-Ramesh
> >>
> >>
> >>
> >>
> >>
> >
> >
> >
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Re: Sample midterm 2002: problem 1b(i)
Date: Wed, 12 Feb 2003 20:02:38 -0800
Lines: 37
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1045108700 10848 128.12.184.109 (13 Feb 2003 03:58:20 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4540

The system here is not a deterministic queue,first of all.
Arrival process is the process of customers arriving at the shop. Ave rate
:1 customer/min
Service process is the process of downloading the DVDs and giving them
away.Min ave rate shud be 1 cust/min
Otherwise the customer queue will be increased without bound.
This is the same as saying min ave download rate is d*8/60. Otherwise, there
can't be an average queue length of 10. ie. if R < d*8/60 the ave queue
length is not finite.
Hence the answer.

-Pavan

----- Original Message -----
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Sent: Wednesday, February 12, 2003 1:48 PM
Subject: Sample midterm 2002: problem 1b(i)


> for this problem, I still dont see the connection between the average
> number of customers waiting (i.e. queue length) and the average service
> rate (i.e. R).
>
> from the problem statement, on average, one new customer per minute buys a
> DVD. is this implying the arrival rate of the system is D (bytes per sec)?
>
> the explanation in the solution did not explicitly explain the
> quantitative relationship between arrival rate and departure rate.
>
> any thoughts? thanks!
>
> Tan
>



.

Path: shelby.stanford.edu!elaine23.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: slide #43 of Handout #3
Date: Wed, 12 Feb 2003 20:50:16 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine23.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045111816 13076 171.64.15.98 (13 Feb 2003 04:50:16 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4541

a slightly different situation:

suppose arrival rate is still 1000 bps and max departure rate reduces to
250 bps now. what is the average queue occupancy in this case, when the
queue is non-empty?

at time 0s, queue empty;
the queue fills at rate 750bps for 0.1s;
then drains at rate 250bps for 0.3s;
at 0.4s, queue empty again.

thanks!
Tan

.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: slide #43 of Handout #3
Date: Wed, 12 Feb 2003 22:32:19 -0800
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1045117935 16387 128.12.185.34 (13 Feb 2003 06:32:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4542

Queue will grow up to 75 bits & then drain to 0.
Avg. occupancy = Area under curve of Q(t) = 15 bits


does that seem right ?  :)



"Tan Gao (weiwei)"  wrote in message

> a slightly different situation:
>
> suppose arrival rate is still 1000 bps and max departure rate reduces to
> 250 bps now. what is the average queue occupancy in this case, when the
> queue is non-empty?
>
> at time 0s, queue empty;
> the queue fills at rate 750bps for 0.1s;
> then drains at rate 250bps for 0.3s;
> at 0.4s, queue empty again.
>
> thanks!
> Tan
>


.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Midterm exam location?
Date: Wed, 12 Feb 2003 22:35:17 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045118118 16480 171.64.15.110 (13 Feb 2003 06:35:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4543

Is it in classroom or somewhere else?

J.

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: problem 5c in sample midterm 2001
Date: Thu, 13 Feb 2003 06:41:23 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1045118483 16657 171.64.15.100 (13 Feb 2003 06:41:23 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4544


>> The solution says we can ignore the L2 link, but the outgoing link is
>> faster than L1.  That means after the outgoing link delivers a packet from
>> L1 (spending time 2N/3R), we still have time N/R - 2N/3R = N/3R before
>> the next packet from L1 arrives.  The outgoing link will spend N/2R time
>> to deliver a packet from L2.  When the next packet from L1 arrives, it
>> needs to wait N/2R - N/3R = N/6R to allow the transmission of the L2
>> packet to finish.
>> Why is the waiting time ignored here?  Are we assuming we can cut off a
>> transmission of a packet?  Am I missing something here?

I think you have the right idea.  (Unless I've made a mistake, it looks to
me like every other packet that arrives on L1 is delayed while an L2 packet
finishes departing).
.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Midterm exam location?
Date: Thu, 13 Feb 2003 06:42:16 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1045118536 16720 171.64.15.100 (13 Feb 2003 06:42:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4545


>Is it in classroom or somewhere else?

It's in the regular classroom.

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Timeouts and retransmissions
Date: Thu, 13 Feb 2003 06:44:03 +0000 (UTC)
Lines: 33
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1045118643 16765 171.64.15.100 (13 Feb 2003 06:44:03 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4546


>From what I gather, a number of the test scripts fail due to timeouts (i.e.
>the 5 retransmissions allowed are exceeded). This happens when one
>increments the retransmission counts for subsequent segments (N onwards)
>while implementing the Go-Back-N strategy. Is this what others have
>experienced as well or am I doing something wrong?

This isn't correct behaviour.

>I got around the "timeouts" problem by either not incrementing the
>retransmission count or by increasing the number of allowed retransmissions
>from 5 to say 15. In these cases, I pass all tests except for 2.H which
>obviously fails due to segments being transmitted more than 5 times. Doing
>things the 'correct' way (with 5 retransmissions and incrementing the
>retransmission count on a go-back-n) results in some of the other tests
>failing with broken pipe errors. Not all bytes get transferred due to the
>fact that the allowed retransmissions has been exceeded (this happens only
>for large files). Is this acceptable behavior? I would think not but am
>positively stumped.

No, it's not--but on the other hand, it's better to fail this test case
than every other one...

>On a related note, the handout states that if a segment is retransmitted 5
>times, then the network is assumed to have "failed" and the "network
>terminated". Does this mean we directly exit the child thread after cleaning
>up or do we still have to go through the FIN-ACK sequence? If the network
>has failed, what sense would that make?

Probably too late to be of use to you (sorry--it's been a busy few days
for us too), but yes, you just bail out.  There aren't many reasonable
choices of action.

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Stumped on PartC: the PASV call is failing w/ my client
Date: Thu, 13 Feb 2003 06:49:05 +0000 (UTC)
Lines: 26
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1045118945 16874 171.64.15.100 (13 Feb 2003 06:49:05 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4547



>Also, when I try using ftpd w/ my ftpcopy on separate
>machines, the PASV response is 127.0.0.1 (which is
>incorrect).  I recall a post on the newsgroup stating we
>should run 'em on the same machine.

Strange; this is localhost, so I wonder if something somewhere is doing
a gethostbyname() on the wrong name.

>In the 'changes necessary for milestone 3' page, there
>is a list of things we need to do to make our ftpcopy work.
>I do not understand the bulleted list at the bottom, especially
>'check for the server response again to verify for success'.

The ftpd was modified to send two responses, rather than the usual one.
I'm not sure why.

>For those of us who took the advice on this very newsgroup
>and used PASV, do we now have to revisit that decision
>and try to use PORT?

I'm curious whether anyone used PASV on this part of the assignment and
had it working (I don't see a particular reason why it wouldn't); the
assumption of the change description was that people would use active mode.
Was your transport layer presumably failing with the provided libftpcopy?
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: No office hours on Monday...
Date: Thu, 13 Feb 2003 20:39:48 +0000 (UTC)
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1045168788 19770 171.64.15.77 (13 Feb 2003 20:39:48 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4548

Monday is a University Holliday and there will be no office hours.

  Guido
.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: Stumped on PartC: the PASV call is failing w/ my client
Date: Thu, 13 Feb 2003 13:46:40 -0800
Lines: 48
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045172804 22235 171.64.15.99 (13 Feb 2003 21:46:44 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4549

On Thu, 13 Feb 2003, Matthew Jonathan Holliman wrote:

>
>
> >Also, when I try using ftpd w/ my ftpcopy on separate
> >machines, the PASV response is 127.0.0.1 (which is
> >incorrect).  I recall a post on the newsgroup stating we
> >should run 'em on the same machine.
>
> Strange; this is localhost, so I wonder if something somewhere is doing
> a gethostbyname() on the wrong name.
>
> >In the 'changes necessary for milestone 3' page, there
> >is a list of things we need to do to make our ftpcopy work.
> >I do not understand the bulleted list at the bottom, especially
> >'check for the server response again to verify for success'.
>
> The ftpd was modified to send two responses, rather than the usual one.
> I'm not sure why.

So duplicates?  Like "XYZ: ok\r\n" followed by "XYZ: ok\r\n"?

>
> >For those of us who took the advice on this very newsgroup
> >and used PASV, do we now have to revisit that decision
> >and try to use PORT?
>
> I'm curious whether anyone used PASV on this part of the assignment and
> had it working (I don't see a particular reason why it wouldn't); the
> assumption of the change description was that people would use active mode.


> Was your transport layer presumably failing with the provided libftpcopy?
>

Yes, I discovered that I was setting the FD bit for the application
socket before my call to select in the ctrl loop, even when the
application had already closed the socket.  So that was resulting in a -1
return from select, which caused a segfault since the provided dperror
calls are screwed up:
          dperror(errno);
          dperror("control_loop:select");

i.e., we get a segfault w/ dperror(errno), since dperror is defined as:
    #define dperror(head) dprintf("%s: %s\n", (head), sys_errlist[errno]);

- Erik

.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: midterm 2001 5b
Date: Thu, 13 Feb 2003 13:52:32 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1045173153 22676 128.12.22.55 (13 Feb 2003 21:52:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4550

the solution gives how much the buffer may increase in the period when the
router can start servicing.
However, before that time, it must store N bits (the first packet), so
doesn't the buffer need to store
[how much it can gain = answer in solution] + N?



.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: missing assignment#1 score on web
Date: Thu, 13 Feb 2003 22:06:18 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1045173978 23056 171.64.15.105 (13 Feb 2003 22:06:18 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4551


>I just checked my grade online and saw my score under assignment #1 is
>N/A, while I did receive the email telling me my score a while ago. I'm
>wondering if some scores are not entered into the database yet, or it's
>just me. Please let me know if there's anything I should do if it's the
>latter case.

For some unknown reason, about a third of the scores were missing for PA#1.
I've gone through and entered these; please check that everything looks
correct.

.

Path: shelby.stanford.edu!not-for-mail
From: "Ramesh Balakrishnan" 
Newsgroups: su.class.cs244a
Subject: README for part 2.c
Date: Thu, 13 Feb 2003 20:33:36 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: boltblaster.stanford.edu
X-Trace: news.Stanford.EDU 1045197217 6338 128.12.71.90 (14 Feb 2003 04:33:37 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4552

What kind of design doc are we supposed to submit for part 3? I wrote 0
lines of code for part 3 and my program passes all tests... I don't see any
design decisions or code structure that I could elaborate on.

-Ramesh


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: assignment 3
Date: Thu, 13 Feb 2003 21:19:31 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1045199965 8235 128.12.195.69 (14 Feb 2003 05:19:25 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4553

Is the VR server for assignment 3 not running? I was trying to play around
with the demo client but connection request to the server is refused.

-myl


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Question about Jacobson/Karels Algorithm
Date: Fri, 14 Feb 2003 06:37:20 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 42
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1045204640 11326 171.64.15.112 (14 Feb 2003 06:37:20 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4554

I found some information in Comer (Douglas E. Comer, Internetworking
With TCP/IP, Volume I, second edition, 1991).  This edition is out of
date, so my information may be old as well.

For responding to high variance in delay the following
equations are given:

    DIFF = SAMPLE - Old_RTT
    RTT = Old_RTT - delta * DIFF
    DEV = Old_DEV + delta(|DIFF| - Old_DEV)

DEV is the estimated mean deviation.
delta is a fraction between 0 and 1 that controls how quickly
    the new sample affects the weighted average.
TCP chooses delta to be 1/(2^n).  Research suggests a value
    of n=3 will work well.

(Some material quoted directly from Comer.)

Another source located on Google gave delta as 0.125 which
agrees with Comer's information.

SteveJ


In article 
Man Yu Lui  wrote:
>In the Jacobson/Karels Algorithm,
>
>EstimatedRTT = EstimatedRTT + (sigma x difference)
>Deivation = Deviation + sigma (|difference| - deviation)
>
>How do we determine sigma? Book only says sigma is a fraction between 0 and
>1.
>
>Thanks.
>
>-myl
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: assignment 3
Date: Fri, 14 Feb 2003 19:30:58 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1045279931 23908 128.12.186.92 (15 Feb 2003 03:32:11 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4555

The VR assignment is only available to the beta testers at this time.  If
you have the starter code that you grabbed off the net prior to today ignore
it because we are no longer using that code.

--Russ


"Man Yu Lui"  wrote in message

> Is the VR server for assignment 3 not running? I was trying to play around
> with the demo client but connection request to the server is refused.
>
> -myl
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: README for part 2.c
Date: Fri, 14 Feb 2003 19:31:53 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1045279985 23914 128.12.186.92 (15 Feb 2003 03:33:05 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4556

It's a little late now considering part 3 was due on Wednesday but just
write that your code worked out of the box (so to say).

--Russ

"Ramesh Balakrishnan"  wrote in message

> What kind of design doc are we supposed to submit for part 3? I wrote 0
> lines of code for part 3 and my program passes all tests... I don't see
any
> design decisions or code structure that I could elaborate on.
>
> -Ramesh
>
>


.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: Re: assignment 3
Date: Sun, 16 Feb 2003 22:12:18 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 30
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1045433538 28793 171.64.15.99 (16 Feb 2003 22:12:18 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4557


Are the assignment description and FAQ [which I've already started to
study] also being updated?

Keith




In article 
Russell Greene  wrote:
>The VR assignment is only available to the beta testers at this time.  If
>you have the starter code that you grabbed off the net prior to today ignore
>it because we are no longer using that code.
>
>--Russ
>
>
>"Man Yu Lui"  wrote in message

>> Is the VR server for assignment 3 not running? I was trying to play around
>> with the demo client but connection request to the server is refused.
>>
>> -myl
>>
>>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: assignment 3
Date: Sun, 16 Feb 2003 15:04:24 -0800
Lines: 42
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1045436737 69 128.12.186.92 (16 Feb 2003 23:05:37 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4558

The basic idea of the assignment is staying the same, however the
infrastructure has been re-designed and re-written since last year.  Guido
and Martin Casado can fill you in on more of the details.

--Russ

"Keith A Primdahl"  wrote in message

>
> Are the assignment description and FAQ [which I've already started to
> study] also being updated?
>
> Keith
>
>
>
>
> In article 
> Russell Greene  wrote:
> >The VR assignment is only available to the beta testers at this time.  If
> >you have the starter code that you grabbed off the net prior to today
ignore
> >it because we are no longer using that code.
> >
> >--Russ
> >
> >
> >"Man Yu Lui"  wrote in message
> 
> >> Is the VR server for assignment 3 not running? I was trying to play
around
> >> with the demo client but connection request to the server is refused.
> >>
> >> -myl
> >>
> >>
> >
> >
>
>


.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: when can we get started on PA #3?
Date: Mon, 17 Feb 2003 01:36:50 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045474611 18349 171.64.15.69 (17 Feb 2003 09:36:51 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4559

hi!

when will the skeleton code for assignment 3 (and other supporting
programs like VR server) be ready for the non-beta testers of the class?

thanks!
Tan

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: when can we get started on PA #3?
Date: Mon, 17 Feb 2003 22:30:05 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1045521005 10631 171.64.15.112 (17 Feb 2003 22:30:05 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4560

We will post an availability status on Tuesday.

SteveJ

>when will the skeleton code for assignment 3 (and other supporting
>programs like VR server) be ready for the non-beta testers of the class?
>


.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: Midterm & PA2 Grades
Date: Tue, 18 Feb 2003 23:26:41 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1045610801 27625 171.64.15.100 (18 Feb 2003 23:26:41 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4561

Hi,

I was just wondering what the schedule was for releasing the
midterm grades, as well as the PA2 (a, b, c) grades...

Are the midterm grades just going to go on the web in the same
place as usual, or are they being emailed out or handed out?

I'm an SITN student, so I'm just wondering if I'll need to do something
special to pick up my midterm.

Thanks,

- Mark

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: when can we get started on PA #3?
Date: Wed, 19 Feb 2003 00:56:44 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 11
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1045616204 1423 171.64.15.76 (19 Feb 2003 00:56:44 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4562

Our goal is to post the programming assignment 3 materials on Thursday.

SteveJ

>
>>when will the skeleton code for assignment 3 (and other supporting
>>programs like VR server) be ready for the non-beta testers of the class?
>>
>


.

Path: shelby.stanford.edu!elaine26.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Midterm & PA2 Grades
Date: Thu, 20 Feb 2003 01:23:06 +0000 (UTC)
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1045704186 23845 171.64.15.101 (20 Feb 2003 01:23:06 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4563


>I was just wondering what the schedule was for releasing the
>midterm grades, as well as the PA2 (a, b, c) grades...

PA#2 is pretty much done and grades should go out tonight, I hope; the
midterm will be handed back in class tomorrow if things go according to
plan.

>Are the midterm grades just going to go on the web in the same
>place as usual, or are they being emailed out or handed out?

The grades will be posted on eeclass as usual.

>I'm an SITN student, so I'm just wondering if I'll need to do something
>special to pick up my midterm.

If you wrote your company name on the exam (and we see it), we'll send it
back via SITN; if you forgot, please let your TA know and we'll try and
get it back to you.

.

Path: shelby.stanford.edu!saga9.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: Re: when can we get started on PA #3?
Date: Thu, 20 Feb 2003 12:07:38 -0800
Lines: 22
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: saga9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045771658 1521 171.64.15.139 (20 Feb 2003 20:07:38 GMT)
X-Complaints-To: 
To: Steve Jacobson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4564

I just looked at
http://www.stanford.edu/class/cs244a/homeworks/hw3/index.html and don't
see an updated version.

I'd like to plan on reading this before class today. At what time exactly
do we expect this to be updated??


On
Mon, 17 Feb 2003, Steve Jacobson wrote:

> We will post an availability status on Tuesday.
>
> SteveJ
>
> >when will the skeleton code for assignment 3 (and other supporting
> >programs like VR server) be ready for the non-beta testers of the class?
> >
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: when can we get started on PA #3?
Date: Thu, 20 Feb 2003 12:46:02 -0800
Lines: 32
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1045774037 3178 128.12.186.92 (20 Feb 2003 20:47:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4565

As per the email Professor McKeown sent out to the class email list --
sometime today.

-Russ

"Jonathan D Herbach"  wrote in message

> I just looked at
> http://www.stanford.edu/class/cs244a/homeworks/hw3/index.html and don't
> see an updated version.
>
> I'd like to plan on reading this before class today. At what time exactly
> do we expect this to be updated??
>
>
> On
> Mon, 17 Feb 2003, Steve Jacobson wrote:
>
> > We will post an availability status on Tuesday.
> >
> > SteveJ
> >
> > >when will the skeleton code for assignment 3 (and other supporting
> > >programs like VR server) be ready for the non-beta testers of the
class?
> > >
> >
> >
> >
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Mid-term solutions
Date: Thu, 20 Feb 2003 17:20:26 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1045790427 14077 128.12.185.34 (21 Feb 2003 01:20:27 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4566

Could you please post the mid-term solutions?

Thanks,
Nishant


.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Mid-term solutions
Date: Fri, 21 Feb 2003 04:28:53 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
X-Trace: news.Stanford.EDU 1045801733 20418 171.64.15.99 (21 Feb 2003 04:28:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4567


>Could you please post the mid-term solutions?

Done.  They're on the schedule/handouts page (by the midterm date, as per
the norm).

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: missing figures in assignment #3 page
Date: Fri, 21 Feb 2003 10:29:17 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045852159 15845 171.64.15.85 (21 Feb 2003 18:29:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4568

Hi,
it seems that the figures in assignment #3 are missing. They show
as a broken link in my browser.
Could any TA check that out?
Thanks
Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: PA3 - Server Down?
Date: Fri, 21 Feb 2003 22:41:17 +0000 (UTC)
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine43.stanford.edu
X-Trace: news.Stanford.EDU 1045867277 25789 171.64.15.118 (21 Feb 2003 22:41:17 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4569

Hi,

I was just wondering if anything's currently wrong with the VR-Server...

Earlier today (this morning), I would get constant incoming ARP request
packets from the firewall side, and extra packets if I tried to ping
or traceroute or connect to one of the machines on my topology.

Now, my sr-client connects, and then just sits there frozen in the
read from server, and never gets anything :( 

I know it's not the fault of my code, because I went back to the original
sr_stub distribution of the assignment, and it also now hangs (gets no
packets), whereas before, it used to get packets once every second or so.

Hope it comes back up soon :)

- Mark

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: missing figures in assignment #3 page
Date: Fri, 21 Feb 2003 16:37:32 -0800
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045874246 542 171.64.74.37 (22 Feb 2003 00:37:26 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4570

Thanks, it's fixed now!

Rafael M Hernandez wrote:
> Hi,
> it seems that the figures in assignment #3 are missing. They show
> as a broken link in my browser.
> Could any TA check that out?
> Thanks
> Rafa
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: PA3 - Server Down?
Date: Fri, 21 Feb 2003 16:38:15 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1045874289 542 171.64.74.37 (22 Feb 2003 00:38:09 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4571

Mark,

not sure what it was but a simple restart did the job. Please mail 
appenz and casado if it happens again.

  Guido

Mark Rabkin wrote:
> Hi,
> 
> I was just wondering if anything's currently wrong with the VR-Server...
> 
> Earlier today (this morning), I would get constant incoming ARP request
> packets from the firewall side, and extra packets if I tried to ping
> or traceroute or connect to one of the machines on my topology.
> 
> Now, my sr-client connects, and then just sits there frozen in the
> read from server, and never gets anything :( 
> 
> I know it's not the fault of my code, because I went back to the original
> sr_stub distribution of the assignment, and it also now hangs (gets no
> packets), whereas before, it used to get packets once every second or so.
> 
> Hope it comes back up soon :)
> 
> - Mark
> 

.

Path: shelby.stanford.edu!elaine28.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: untar
Date: Sat, 22 Feb 2003 01:17:38 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine28.stanford.edu
X-Trace: news.Stanford.EDU 1045876658 1997 171.64.15.103 (22 Feb 2003 01:17:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4572


How does one untar the assignment3 tarball? 

If I cp it, it comes over as assignment3.tar.gz

If I download it from the link, it comes done as assignment3.tar.tar, which
I then ftp back to my elaine directory.

In both the above cases, several combinations of tar commands (e.g., tar
-xvf assignment3.tar.gz ;make) always fail
with a message that it's not being recognized as a tar file?

One would not expect that discarding the second extension would not make a
diffence, and it doesn't.

Thanks...Keith

.

Path: shelby.stanford.edu!not-for-mail
From: "Bina Vasavda" 
Newsgroups: su.class.cs244a
Subject: Re: untar
Date: Fri, 21 Feb 2003 17:45:22 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: ev-02-hos4d.stanford.edu
X-Trace: news.Stanford.EDU 1045878323 3107 128.12.154.94 (22 Feb 2003 01:45:23 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4573

try tar -zxvf for the .tar.gz file

"Keith A Primdahl"  wrote in message

>
> How does one untar the assignment3 tarball?
>
> If I cp it, it comes over as assignment3.tar.gz
>
> If I download it from the link, it comes done as assignment3.tar.tar,
which
> I then ftp back to my elaine directory.
>
> In both the above cases, several combinations of tar commands (e.g., tar
> -xvf assignment3.tar.gz ;make) always fail
> with a message that it's not being recognized as a tar file?
>
> One would not expect that discarding the second extension would not make a
> diffence, and it doesn't.
>
> Thanks...Keith
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Re: untar
Date: Fri, 21 Feb 2003 17:53:03 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1045878785 3324 128.12.181.52 (22 Feb 2003 01:53:05 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4574

"tar -xzvf assignment3.tar.gz" worked for me, with 'z' option for gzip
extension part.

"Keith A Primdahl"  wrote in message

>
> How does one untar the assignment3 tarball?
>
> If I cp it, it comes over as assignment3.tar.gz
>
> If I download it from the link, it comes done as assignment3.tar.tar,
which
> I then ftp back to my elaine directory.
>
> In both the above cases, several combinations of tar commands (e.g., tar
> -xvf assignment3.tar.gz ;make) always fail
> with a message that it's not being recognized as a tar file?
>
> One would not expect that discarding the second extension would not make a
> diffence, and it doesn't.
>
> Thanks...Keith
>


.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: IP Header Alignment
Date: Sat, 22 Feb 2003 08:19:10 +0000 (UTC)
Lines: 56
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1045901950 14551 171.64.15.100 (22 Feb 2003 08:19:10 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4575

I was running into a nasty (hard-to-figure-out) crash for a while...

The problem was with an incoming IP packet, which consists of the
ethernet header (14 bytes), and then the IP header immediately after.

I just did something like this:

--------------------
  struct ip *ip_hdr = (struct ip *)
      &packet[sizeof(struct sr_ethernet_header)];

  if (ip_hdr->ip_hl == 5)  <=== SEGFAULT RIGHT HERE
  {
    ...
  }
--------------------


So, in effect, i'm setting my IP header pointer to index directly into the
packet array.  After that, if I try to access either one of the two bitfield
members at the beginning of the IP packet (both 4 bits, ip_v and ip_hl), I
would get a bus error.

On the other hand, this works fine:

--------------------
  struct ip new_header;
  struct ip *ip_hdr = (struct ip *)
      &packet[sizeof(struct sr_ethernet_header)];

  memcpy(&new_header, ip_hdr, sizeof(struct ip));

  if (new_header.ip_hl == 5)
  {
    ...
  }
--------------------


Basically, I can access that memory byte-by-byte to copy it out, but I can't
access the bit fields in place! Other fields, such as "ip_len", work fine in
place...

Does anyone have a clear explanation as to why this would be?  My only guess
is that since the ethernet header is 14 bytes, the start of the IP header
isn't on a 4-byte-boundary, so it prevents whatever weirdness C uses to
access bit-fields.....

Anyway, just wanted to see if anyone else has run into this, or knows why
bit-fields would behave like this.

Thanks,

Mark


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: IP Header Alignment
Date: Sat, 22 Feb 2003 08:56:59 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 84
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1045904219 16046 171.64.15.112 (22 Feb 2003 08:56:59 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4576

You are either failing due to an alignment error, or
because you are accessing past the end of the packet
array.

ip_hl is not even byte aligned, so it cannot be accessed
directly through a pointer.  The "." operator is the
correct way to access bit fields, as you have done in
your second example.

Also, what is the data type of packet[]?  You are indexing
into packet[] as if it were a character array.  If it is
not, you are indexing into the array by multiples of <data
type of packet>, not by multiples of bytes, which could
cause a segfault.

gdb (or ddd) can help you.  If a pointer dereference causes
a segfault, run under gdb.  After the segfault (or before,
if single stepping) "print" the value of the pointer; you
can then see if the address is reasonable, and correctly
aligned.  "x" (examine) is another useful command; you can
"x" in hex, making alignment checking easier.

SteveJ

In article 
Mark Rabkin   wrote:
>I was running into a nasty (hard-to-figure-out) crash for a while...
>
>The problem was with an incoming IP packet, which consists of the
>ethernet header (14 bytes), and then the IP header immediately after.
>
>I just did something like this:
>
>--------------------
>  struct ip *ip_hdr = (struct ip *)
>      &packet[sizeof(struct sr_ethernet_header)];
>
>  if (ip_hdr->ip_hl == 5)  <=== SEGFAULT RIGHT HERE
>  {
>    ...
>  }
>--------------------
>
>
>So, in effect, i'm setting my IP header pointer to index directly into the
>packet array.  After that, if I try to access either one of the two bitfield
>members at the beginning of the IP packet (both 4 bits, ip_v and ip_hl), I
>would get a bus error.
>
>On the other hand, this works fine:
>
>--------------------
>  struct ip new_header;
>  struct ip *ip_hdr = (struct ip *)
>      &packet[sizeof(struct sr_ethernet_header)];
>
>  memcpy(&new_header, ip_hdr, sizeof(struct ip));
>
>  if (new_header.ip_hl == 5)
>  {
>    ...
>  }
>--------------------
>
>
>Basically, I can access that memory byte-by-byte to copy it out, but I can't
>access the bit fields in place! Other fields, such as "ip_len", work fine in
>place...
>
>Does anyone have a clear explanation as to why this would be?  My only guess
>is that since the ethernet header is 14 bytes, the start of the IP header
>isn't on a 4-byte-boundary, so it prevents whatever weirdness C uses to
>access bit-fields.....
>
>Anyway, just wanted to see if anyone else has run into this, or knows why
>bit-fields would behave like this.
>
>Thanks,
>
>Mark
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Ethernet Frame
Date: Sat, 22 Feb 2003 05:19:29 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1045919947 23216 128.12.195.69 (22 Feb 2003 13:19:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4577

I have a question regarding the Ethernet frame: I determined that the
Preamble and SFD is not included in the packet buffer as argument to
sr_handlepacket(), but when I extract an ARP packet from an Ethernet frame,
there are 18 bytes that are zeros after the ARP packet. I wonder what do
these bytes mean and are they always zeros? Should I include 18 bytes of
zero in Ethernet frames I create? What about the padding and CRC (do we need
to worry about those, or are they the 18 bytes of zeros)?

Thanks.

-myl


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Ethernet Frame
Date: Sat, 22 Feb 2003 10:32:32 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045938754 29738 171.64.15.80 (22 Feb 2003 18:32:34 GMT)
X-Complaints-To: 
To: Man Yu Lui   
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4578


> I have a question regarding the Ethernet frame: I determined that the
> Preamble and SFD is not included in the packet buffer as argument to
> sr_handlepacket()

  correct ..

> but when I extract an ARP packet from an Ethernet frame,
> there are 18 bytes that are zeros after the ARP packet. I wonder what do
> these bytes mean and are they always zeros?

 the minimum size of the data portion of an ethernet packet is 46 bytes ... so
 with a 14 byte ethernet header you get a 16 byte packet.  It doesn't
 necessarily matter what the padding is, it isn't processed by the stack.

 (ref: http://www.cisco.com/warp/public/105/encheat.html)

> Should I include 18 bytes of
> zero in Ethernet frames I create?

 No, this you don't have to do, cretaing and sending a 42 byte packet is
 fine ... your packet will appear on the wire with 60 bytes.

> What about the padding and CRC (do we need
> to worry about those, or are they the 18 bytes of zeros)?

 Handled for you by the OS .

 Good questions .... FAQ material
   /myl

.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: Re: IP Header Alignment
Date: Sat, 22 Feb 2003 19:33:01 +0000 (UTC)
Lines: 125
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1045942381 1560 171.64.15.100 (22 Feb 2003 19:33:01 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4579

Thanks, Steve.

Turns out alignment is the issue, even if I use the "." operator...

This program crashes on the elaine machines:

---------------------------------------
  struct test
  {
    unsigned int t_hl : 4;
    unsigned int t_v  : 4;
  };
  
  int main()
  {
    unsigned char cBuf[255];
    struct test* tp;
  
    tp = (struct test*) cBuf;
    tp->t_hl = tp->t_v = 5;         /* works ok */
  
    tp = (struct test*) (cBuf + 2);
    tp->t_hl = tp->t_v = 5;         /* SEGFAULT */
  
    return 0;
  }
---------------------------------------

It's just a buzzing annoyance, because I can't as easily operate on
the IP header in place, and I'd rather not keep copying it back & forth :)

By the way, I had tried GDB, and inside, it shows all correct values
for all the 'struct ip' fields (including the two bit-fields!).  The pointer
looks ok too, it's just that it ends in "0x...0e", so it's not 4-byte-aligned.

Guess you learn something new about C every day :)

- Mark


Steve Jacobson  wrote:
> You are either failing due to an alignment error, or
> because you are accessing past the end of the packet
> array.

> ip_hl is not even byte aligned, so it cannot be accessed
> directly through a pointer.  The "." operator is the
> correct way to access bit fields, as you have done in
> your second example.

> Also, what is the data type of packet[]?  You are indexing
> into packet[] as if it were a character array.  If it is
> not, you are indexing into the array by multiples of <data
> type of packet>, not by multiples of bytes, which could
> cause a segfault.

> gdb (or ddd) can help you.  If a pointer dereference causes
> a segfault, run under gdb.  After the segfault (or before,
> if single stepping) "print" the value of the pointer; you
> can then see if the address is reasonable, and correctly
> aligned.  "x" (examine) is another useful command; you can
> "x" in hex, making alignment checking easier.

> SteveJ

> In article 
> Mark Rabkin   wrote:
>>I was running into a nasty (hard-to-figure-out) crash for a while...
>>
>>The problem was with an incoming IP packet, which consists of the
>>ethernet header (14 bytes), and then the IP header immediately after.
>>
>>I just did something like this:
>>
>>--------------------
>>  struct ip *ip_hdr = (struct ip *)
>>      &packet[sizeof(struct sr_ethernet_header)];
>>
>>  if (ip_hdr->ip_hl == 5)  <=== SEGFAULT RIGHT HERE
>>  {
>>    ...
>>  }
>>--------------------
>>
>>
>>So, in effect, i'm setting my IP header pointer to index directly into the
>>packet array.  After that, if I try to access either one of the two bitfield
>>members at the beginning of the IP packet (both 4 bits, ip_v and ip_hl), I
>>would get a bus error.
>>
>>On the other hand, this works fine:
>>
>>--------------------
>>  struct ip new_header;
>>  struct ip *ip_hdr = (struct ip *)
>>      &packet[sizeof(struct sr_ethernet_header)];
>>
>>  memcpy(&new_header, ip_hdr, sizeof(struct ip));
>>
>>  if (new_header.ip_hl == 5)
>>  {
>>    ...
>>  }
>>--------------------
>>
>>
>>Basically, I can access that memory byte-by-byte to copy it out, but I can't
>>access the bit fields in place! Other fields, such as "ip_len", work fine in
>>place...
>>
>>Does anyone have a clear explanation as to why this would be?  My only guess
>>is that since the ethernet header is 14 bytes, the start of the IP header
>>isn't on a 4-byte-boundary, so it prevents whatever weirdness C uses to
>>access bit-fields.....
>>
>>Anyway, just wanted to see if anyone else has run into this, or knows why
>>bit-fields would behave like this.
>>
>>Thanks,
>>
>>Mark
>>
>>


.

Path: shelby.stanford.edu!saga19.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: guido's slides
Date: Sat, 22 Feb 2003 12:42:48 -0800
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045946569 3498 171.64.15.149 (22 Feb 2003 20:42:49 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4580

I don't see guido's slides from yesterday on the "Timetable" page; are
they in another location?

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Pls post stats for pp2
Date: Sun, 23 Feb 2003 01:14:50 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine20.stanford.edu
X-Trace: news.Stanford.EDU 1045962890 11557 171.64.15.85 (23 Feb 2003 01:14:50 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4581


..
.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: traceroute
Date: Sat, 22 Feb 2003 19:44:10 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1045971821 15805 128.12.195.69 (23 Feb 2003 03:43:41 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4582

Hi,

I am trying to implement traceroute response. Seems like traceroute on the
elaine machine uses the UDP approach and sends a 38 bytes IP packet
encapsulating a 18 bytes UDP packet to my router. The IP header has no
options.

* Is there any reference as to how I should decode the data portion of this
UDP packet?
* Should I return a UDP packet, or the ICMP traceroute response message (in
which case I believe I need the ID number, outbound hop count, and return
hop count)?
* Do we need to worry about traceroute through IP options and ICMP Echo
message as well?

Thanks.

-myl


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: traceroute
Date: Sat, 22 Feb 2003 19:59:20 -0800
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045972763 16160 171.64.15.80 (23 Feb 2003 03:59:23 GMT)
X-Complaints-To: 
To: Man Yu Lui 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4583


> Hi,
>
> I am trying to implement traceroute response. Seems like traceroute on the
> elaine machine uses the UDP approach and sends a 38 bytes IP packet
> encapsulating a 18 bytes UDP packet to my router. The IP header has no
> options.

 unix traceroute uses UDP unless you use the -I option to specify ICMP.

>
> * Is there any reference as to how I should decode the data portion of this
> UDP packet?

 There is no reason to be looking at the data of the UDP packet.

> * Should I return a UDP packet, or the ICMP traceroute response message (in
> which case I believe I need the ID number, outbound hop count, and return
> hop count)?

 The appropriate response is to send an ICMP port unreach message back to the
 sending host.

> * Do we need to worry about traceroute through IP options and ICMP Echo
> message as well?

 I'm not sure what "traceroute through IP options" means.  You should send an
 ICMP port unreach message in response to any TCP/UDP packet destined to an
 interface on your router.

 You do need to support ICMP echo replies, aka you should be able to ping your
 router.

 /mc

.

Path: shelby.stanford.edu!saga19.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: router table
Date: Sat, 22 Feb 2003 20:10:57 -0800
Lines: 24
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045973458 16534 171.64.15.149 (23 Feb 2003 04:10:58 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4584

I'm a little confused on the router table.

I'm not sure how my router knows which interface contains www-netid and
ftp-netid. One option is to edit my rtable file to include the following
two entries:
192.168.128.64	192.168.128.64	255.255.255.255	eth1
192.168.129.109	192.168.129.109	255.255.255.255 eth2

(These correspond to www-jherbach and ftp-jherbach, respectively.)

Another option might be to generate ARP requests on all interfaces and see
if we receive a reply from one interface for said IP. If we do, then we
encode that into our routing table dynamically. If we don't, then we add
that as a "default route" through the eth0 gateway.

If we use the former version, we're only going to be dealing with
255.255.255.255 and 0.0.0.0 subnet masks. I assume that we should have our
code work with others, and we should use the "longest prefix matching"
sort of algorithm? Or is that a "not required but smiled upon" feature --
i.e., we are only required to support 0.0.0.0 and 255.255.255.255?


Jonathan

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: traceroute
Date: Sun, 23 Feb 2003 04:12:49 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 42
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1045973569 16567 171.64.15.112 (23 Feb 2003 04:12:49 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4585

In article 
Man Yu Lui  wrote:
>Hi,
>
>I am trying to implement traceroute response. Seems like traceroute on the
>elaine machine uses the UDP approach and sends a 38 bytes IP packet
>encapsulating a 18 bytes UDP packet to my router. The IP header has no
>options.
>
>* Is there any reference as to how I should decode the data portion of this
>UDP packet?

Chapter 8 of Stevens has a pretty good description.  However, from
a router perspective, the UDP isn't really important.

>* Should I return a UDP packet, or the ICMP traceroute response message (in
>which case I believe I need the ID number, outbound hop count, and return
>hop count)?

The important idea from the router perspective is to send an
ICMP "time exceeded" message if the TTL in the IP header is 0.
(Possibly if the router decrements the TTL to 0 as well, since
routers are not supposed to forward packets with TTL of 0 or 1).

>* Do we need to worry about traceroute through IP options and ICMP Echo
>message as well?

There should be no need to explicitly support IP options, though
you wouldn't want to crash.

You want to support ICMP echo and echo reply so ping will work.

SteveJ

>
>Thanks.
>
>-myl
>
>


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: router table
Date: Sat, 22 Feb 2003 20:24:11 -0800
Lines: 39
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045974252 16881 171.64.15.80 (23 Feb 2003 04:24:12 GMT)
X-Complaints-To: 
To: Jonathan D Herbach 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4586


> I'm a little confused on the router table.
>
> I'm not sure how my router knows which interface contains www-netid and
> ftp-netid. One option is to edit my rtable file to include the following
> two entries:
> 192.168.128.64	192.168.128.64	255.255.255.255	eth1
> 192.168.129.109	192.168.129.109	255.255.255.255 eth2
>
> (These correspond to www-jherbach and ftp-jherbach, respectively.)
>
> Another option might be to generate ARP requests on all interfaces and see
> if we receive a reply from one interface for said IP. If we do, then we
> encode that into our routing table dynamically. If we don't, then we add
> that as a "default route" through the eth0 gateway.

> If we use the former version, we're only going to be dealing with
> 255.255.255.255 and 0.0.0.0 subnet masks. I assume that we should have our
> code work with others, and we should use the "longest prefix matching"
> sort of algorithm? Or is that a "not required but smiled upon" feature --
> i.e., we are only required to support 0.0.0.0 and 255.255.255.255?
>

  Jonathan,

    This is a good point.  As you state, the assignment talks about it in the
    "not required but smiled upon" section ... pretty much you are only
    required to support the former method ... using a rtable that looks like
    the following (with the default route added of course).

     192.168.128.64     192.168.128.64   255.255.255.255   eth1
     192.168.129.109    192.168.129.109  255.255.255.255   eth2

     Of course, given well defined subnets with multiple hosts off each
     interface you'd want to specify a subnet in the routing table without a
     next hop so the router could arp for the end host.

     /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: PLZ READ: ** UPDATE TO STUB CODE
Date: Sat, 22 Feb 2003 20:32:32 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045974754 17166 171.64.15.80 (23 Feb 2003 04:32:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4587


 Hi,

   I've made a minor change to the stub code which grabs the appropriate
   username and uses it when connecting to the VNS server.  In order to
   help with debugging, we (the TAs and myself) would appreciate it if
   you could use this version of the code.  The only affected file is
   sr_main.c which you should be able to drop in your current project.

   The updated tarball is posted in place of the old one on the class web page.

   Thanks :-)
   /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: VR server
Date: Sat, 22 Feb 2003 20:46:00 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1045975530 17612 128.12.195.69 (23 Feb 2003 04:45:30 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4588

Hi - Is there a problem with the VR system? My router has stopped receiving
any packets.

-myl


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: VR server
Date: Sat, 22 Feb 2003 21:04:25 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045976667 18229 171.64.15.80 (23 Feb 2003 05:04:27 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4589


> Hi - Is there a problem with the VR system? My router has stopped receiving
> any packets.
>
> -myl

 It seems that the arp packets were not getting forwarded.... but they are now.
 This happened last night and I've never seen it before .. hmmmm.

 I'm going to turn debugging on.

 /mc

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: traceroute
Date: Sun, 23 Feb 2003 05:10:01 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 21
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1045977001 18416 171.64.15.112 (23 Feb 2003 05:10:01 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4590

A clarification about the ICMP response when an IP packet with
TTL of 0 is received.  This results from a discussion with Martin:

    In my experience it depends .. many hosts will return a PORT
    unreachable (for example Linux) when recieving a traceroute,
    others will return a ttl time exceeded.  Either way, in practice
    I'm sure both answers are OK.

SteveJ

>
>>* Should I return a UDP packet, or the ICMP traceroute response message (in
>>which case I believe I need the ID number, outbound hop count, and return
>>hop count)?
>
>The important idea from the router perspective is to send an
>ICMP "time exceeded" message if the TTL in the IP header is 0.
>(Possibly if the router decrements the TTL to 0 as well, since
>routers are not supposed to forward packets with TTL of 0 or 1).
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: VR server
Date: Sat, 22 Feb 2003 21:30:37 -0800
Lines: 21
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1045978206 18897 128.12.195.69 (23 Feb 2003 05:30:06 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4591

I was fixed for a while, but it is happening again right now.

"Martin Casado"  wrote in message

>
> > Hi - Is there a problem with the VR system? My router has stopped
receiving
> > any packets.
> >
> > -myl
>
>  It seems that the arp packets were not getting forwarded.... but they are
now.
>  This happened last night and I've never seen it before .. hmmmm.
>
>  I'm going to turn debugging on.
>
>  /mc
>


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: VR server
Date: Sat, 22 Feb 2003 22:59:09 -0800
Lines: 8
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045983551 21243 171.64.15.80 (23 Feb 2003 06:59:11 GMT)
X-Complaints-To: 
To: Man Yu Lui 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4592


> I was fixed for a while, but it is happening again right now.
>

 seems to be working fine for me...

 /mc

.

Path: shelby.stanford.edu!saga19.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: arp cache retries
Date: Sun, 23 Feb 2003 00:13:35 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045988017 23844 171.64.15.149 (23 Feb 2003 08:13:37 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4593

we're supposed to send out an arp request up to five times before dropping
a packet.

how long are we supposed to wait between resending arp requests?


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: arp cache retries
Date: Sun, 23 Feb 2003 00:34:53 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1045989295 24247 171.64.15.80 (23 Feb 2003 08:34:55 GMT)
X-Complaints-To: 
To: Jonathan D Herbach 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4594


> we're supposed to send out an arp request up to five times before dropping
> a packet.
>
> how long are we supposed to wait between resending arp requests?

  Linux seems to resend ARPS every 200 - 500 milliseconds.  However, since you
  don't have a mechanism for providing strong gaurantees on timeouts (unless
  you implement threads or we provide a callback loop) the actual timing is
  difficult to enforce.  Try not to send a resend sooner than 200 milliseconds
  before the last arp sent (on that particular interface) .. but don't worry
  about sending resends when packets are not arriving to the router.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: arp cache retries - another question related to arp entries
Date: Sun, 23 Feb 2003 00:55:07 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1045990475 24580 128.12.195.69 (23 Feb 2003 08:54:35 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4595

Do we need to implement ARP cache time out? Book suggests time out and
remove entries every 15 minutes, but I would suppose this is alos one of
those smile upon features, is this right?


"Jonathan D Herbach"  wrote in message

> we're supposed to send out an arp request up to five times before dropping
> a packet.
>
> how long are we supposed to wait between resending arp requests?
>
>


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: arp cache retries - another question related to arp entries
Date: Sun, 23 Feb 2003 08:23:37 -0800
Lines: 14
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046017419 6447 171.64.15.80 (23 Feb 2003 16:23:39 GMT)
X-Complaints-To: 
To: Man Yu Lui 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4596


> Do we need to implement ARP cache time out? Book suggests time out and
> remove entries every 15 minutes, but I would suppose this is alos one of
> those smile upon features, is this right?

  Actually no, you are expected to implement timeouts in the ARP ache.  It  is
  my mistake if this is not explicitly covered in the assignment description.
  Arp cache entries should time out every 15 seconds or so .. while this is
  much quicker than would be found out in the wild, it makes it much easier to
  grade ;-)

  I will add this to the assignment description.  Thanks for the post.
  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: ARP Requests/Retries
Date: Sun, 23 Feb 2003 19:06:55 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1046027215 9825 171.64.15.100 (23 Feb 2003 19:06:55 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4597

How careful do we have to be on the ARP requests?  If there's 10 packets
that arrive simulatenously destined for "ftp-mrabkin", should we only send
out 1 ARP request for all 10 packets, and keep re-trying that 1 request?

Or, should we send a new ARP request for every new packet to that host (which
is easier, and suggested by the RFC)?

If, by the time the 5 ARP re-transmissions fail, we have accumulated 15 packets
for "ftp-mrabkin", do we at that time drop all 15 immediately?

- Mark
.

Path: shelby.stanford.edu!saga11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: vr_server port
Date: Sun, 23 Feb 2003 12:12:51 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046031173 11971 171.64.15.141 (23 Feb 2003 20:12:53 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4598

Should we be connecting to the default port 12345 or another? I'm not
getting any packet either and mine was working just fine this morning?

Rhea

.

Path: shelby.stanford.edu!saga11.Stanford.EDU!rmortam
From: Rhea Sherman Mortam 
Newsgroups: su.class.cs244a
Subject: forget what I just said: vr_server port
Date: Sun, 23 Feb 2003 12:13:52 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: saga11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046031232 11982 171.64.15.141 (23 Feb 2003 20:13:52 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4599

never mind sorry ....



On Sun, 23 Feb 2003, Rhea Sherman Mortam wrote:

> Should we be connecting to the default port 12345 or another? I'm not
> getting any packet either and mine was working just fine this morning?
>
> Rhea
>
>

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP Requests/Retries
Date: Sun, 23 Feb 2003 12:51:38 -0800
Lines: 27
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046033502 13086 171.64.15.80 (23 Feb 2003 20:51:42 GMT)
X-Complaints-To: 
To: Mark Rabkin 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4600


> How careful do we have to be on the ARP requests?  If there's 10 packets
> that arrive simulatenously destined for "ftp-mrabkin", should we only send
> out 1 ARP request for all 10 packets, and keep re-trying that 1 request?
>
> Or, should we send a new ARP request for every new packet to that host (which
> is easier, and suggested by the RFC)?

 It doesn't really matter. Choose whichever method you prefer and explain your
 design decision in the assignment writeup.  Of course, this somewhat
 contradicts a previous post of mine which says that ARP resends should be
 spaced out by no less than 200  milliseconds.  Since arp has been such a
 salient point on the mailing list I perhaps we (the TAs and I) should be very
 clear about the required functionality.  In the end, if you send 5 arp
 resends, using a reasonable method, and then timeout and send a no route to
 host icmp packet back to the sending host(s) you will have provided the
 desired functionality.

>
> If, by the time the 5 ARP re-transmissions fail, we have accumulated 15 packets
> for "ftp-mrabkin", do we at that time drop all 15 immediately?

 Yes.  However, you will need to issue the proper reply to all hosts with
 packets queued for the unresponsive host.

 /mc

.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: 7 questions on #3
Date: Sun, 23 Feb 2003 21:01:43 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 64
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1046034103 13383 171.64.15.74 (23 Feb 2003 21:01:43 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4601

It looks like the stub code already loads the 
routing table, so when Guido emphasized that we 
should use the dynamic routing table; he meant 
that we need to add a couple more lines to the 
file rtable, and in our code merely query what 
has been set up for us, rather than create a 
redundant static version, correct?  CIDR is not 
mentioned anywhere in the assignment, so we do 
NOT need to set up for "longest match", correct?  
If I recall Guido's routing table slide 
correctly, it seems like exact match exact match 
is sufficient, unless/will the TAs will be 
testing with a broader [subnetted] virtual 
network?

There does seem to be differences in the ICMP 
formats for RFC 792 and RFC 777.  These are dated 
Sept 1981 and April 1981 respectively; so, RFC 
792 appears more current.  However, RFC792 is 
also titled as the DARPA version.  We should 
follow RFC 777, ignore RFC 792, correct?

On page 5 of the assignment, where it says that 
our routers should respond to with an ICMP port 
unreachable for a "tcp/udp packet sent to one of 
its interfaces", it really means "ADDRESSED to 
one of its interfaces", correct?  That is, we 
are NOT supposed to intercept tcp/udp packets 
being sent through our router to our virtual 
servers, correct?

Once my code is working, and I drive to Stanford, 
get on an elaine to start up my code, get on 
another elaine, open a browser, and go for www-
primdahl, what will I get?  Does each virtual web 
server have one or more web pages already in 
place?

Similarly, once my code is working, I should be 
able to [remotely] ssh to an elaine and start my 
code, the open another window to ssh to another 
elaine and "ftp ftp-primdahl", correct?  Then I 
just use the commands from "man ftp" to execute 
ftp, correct?  Am I to ftp my own files back to 
myself for testing?  In other words, the ftp-
primdahl server will have access to the same 
directory structure as any elaine?  Or is there a 
"public directory" and sample files for 
downloading on each virtual ftp server?

I've tried "man ethereal" and "man Ethereal" but 
get nothing.  Meanwhile, I've found 
www.ethereal.com, but am doubting that each of 
use is expected to download the unix version to 
our individual pa3 disk space.  Where should I be 
looking to get ethereal going?  Ditto EtherApe, 
http://etherape.sourceforge.net/ 

What are we expected to deliver?  I'm thinking 
that all my coding will be in sr_router.h and 
sr_router.c (and rtable), okay?  Are submit 
instructions forthcoming?

Thanks...Keith
.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: 7 questions on #3
Date: Sun, 23 Feb 2003 13:36:59 -0800
Lines: 94
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046036220 14518 171.64.15.80 (23 Feb 2003 21:37:00 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4602


> It looks like the stub code already loads the
> routing table, so when Guido emphasized that we
> should use the dynamic routing table; he meant
> that we need to add a couple more lines to the
> file rtable, and in our code merely query what
> has been set up for us, rather than create a
> redundant static version, correct?  CIDR is not
> mentioned anywhere in the assignment, so we do
> NOT need to set up for "longest match", correct?
> If I recall Guido's routing table slide
> correctly, it seems like exact match exact match
> is sufficient, unless/will the TAs will be
> testing with a broader [subnetted] virtual
> network?

You are correct here.  The easiest way to handle routing is to simple set up an
entry for each end host.  Don't worry about longest match.  Of course you can
really go off the deep end with this if you want but it is not necessary.

>
> There does seem to be differences in the ICMP
> formats for RFC 792 and RFC 777.  These are dated
> Sept 1981 and April 1981 respectively; so, RFC
> 792 appears more current.  However, RFC792 is
> also titled as the DARPA version.  We should
> follow RFC 777, ignore RFC 792, correct?

 I would use networksorcery as your reference for headers.  Also, use ethereal
 .. it is a extremely powereful tool and will enumerate all the headers in a
 valid ICMP packet.  You can use it to disect packets sent by valid apps such
 as ping and traceroute.  792 is the correct rfc (not 777)


>
> On page 5 of the assignment, where it says that
> our routers should respond to with an ICMP port
> unreachable for a "tcp/udp packet sent to one of
> its interfaces", it really means "ADDRESSED to
> one of its interfaces", correct?  That is, we
> are NOT supposed to intercept tcp/udp packets
> being sent through our router to our virtual
> servers, correct?

  Correct ;-) I should clarify that in the assignment.

>
> Once my code is working, and I drive to Stanford,
> get on an elaine to start up my code, get on
> another elaine, open a browser, and go for www-
> primdahl, what will I get?  Does each virtual web
> server have one or more web pages already in
> place?

Currently you get the default apache web page .. but this will probably be
changed.

> Similarly, once my code is working, I should be
> able to [remotely] ssh to an elaine and start my
> code, the open another window to ssh to another
> elaine and "ftp ftp-primdahl", correct?  Then I
> just use the commands from "man ftp" to execute
> ftp, correct?  Am I to ftp my own files back to
> myself for testing?  In other words, the ftp-
> primdahl server will have access to the same
> directory structure as any elaine?  Or is there a
> "public directory" and sample files for
> downloading on each virtual ftp server?

  The latter, we have put some files up for you to download.

>
> I've tried "man ethereal" and "man Ethereal" but
> get nothing.  Meanwhile, I've found
> www.ethereal.com, but am doubting that each of
> use is expected to download the unix version to
> our individual pa3 disk space.  Where should I be
> looking to get ethereal going?  Ditto EtherApe,
> http://etherape.sourceforge.net/

  /usr/class/cs244a/bin same for tcpdump

>
> What are we expected to deliver?  I'm thinking
> that all my coding will be in sr_router.h and
> sr_router.c (and rtable), okay?  Are submit
> instructions forthcoming?

 A tarball of all of your code ... it is up to you to decide which files to
  add/change etc.

   Cheers.
    /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: READ THIS PLEASE *** new server available
Date: Sun, 23 Feb 2003 15:55:31 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046044533 18956 171.64.15.80 (23 Feb 2003 23:55:33 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4603


 I've added another VNS server to use when testing. To specify a server on the
 command line, use the -s command line option.  The two available servers are
 ... vr-server-a and vr-server-b

 e.g.

 ./sr -s vr-server-a

 Thanks,
 /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Testing
Date: Sun, 23 Feb 2003 16:08:05 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1046045249 19346 128.12.195.69 (24 Feb 2003 00:07:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4604

Hi,

Since there is no test script (that I know of), I would like to know
(besides the list of features) what things that we should test/look for
before declaring our code ready and fully meets specs? I have in mind things
like linking up a series of virtual clients which cannot be configured by
ourselves. I wonder what can we do to ensure our code works in those
situations (among other possible scenarios)?

Thanks.

-myl


.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Testing
Date: Sun, 23 Feb 2003 16:29:34 -0800
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046046576 20051 171.64.15.87 (24 Feb 2003 00:29:36 GMT)
X-Complaints-To: 
To: Man Yu Lui 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4605


> Hi,
>
> Since there is no test script (that I know of), I would like to know
> (besides the list of features) what things that we should test/look for
> before declaring our code ready and fully meets specs?

 There is not a testing script for this assignment.  If your router supports
 all the required functionality and doesn't crash you will get full points for
 functionality.  The tests will include

 1. ftping a relatively large file (and checksumming the file to ensure the
 data is intact)
 2. traceroute to the app servers, and to all the routers interfaces
 3. pinging to all the router's interfaces
 4. taking down one of the app servers and checking for arp queue timeouts.

 /mc


.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: Testing
Date: Sun, 23 Feb 2003 16:35:50 -0800
Lines: 35
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1046046914 20209 128.12.195.69 (24 Feb 2003 00:35:14 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4606


How do I do the checksum? I don't know of another way to get to the test
files on my ftp server except through my virtual client. Also, how do I do
the checksum? Is there any unix utility that generate the checksum?

Thanks.

"Martin Casado"  wrote in message

>
> > Hi,
> >
> > Since there is no test script (that I know of), I would like to know
> > (besides the list of features) what things that we should test/look for
> > before declaring our code ready and fully meets specs?
>
>  There is not a testing script for this assignment.  If your router
supports
>  all the required functionality and doesn't crash you will get full points
for
>  functionality.  The tests will include
>
>  1. ftping a relatively large file (and checksumming the file to ensure
the
>  data is intact)
>  2. traceroute to the app servers, and to all the routers interfaces
>  3. pinging to all the router's interfaces
>  4. taking down one of the app servers and checking for arp queue
timeouts.
>
>  /mc
>
>


.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Testing
Date: Sun, 23 Feb 2003 17:11:20 -0800
Lines: 49
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046049081 21391 171.64.15.87 (24 Feb 2003 01:11:21 GMT)
X-Complaints-To: 
To: Man Yu Lui 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4607


>
> How do I do the checksum? I don't know of another way to get to the test
> files on my ftp server except through my virtual client.

 We've yet to upldoad the files that are going to be used to testing.
 You can get to the app servers via www-vr-b-2 and www-vr-b-3.

>
> Also, how do I do
> the checksum? Is there any unix utility that generate the checksum?

 Yup .. md5sum

 /mc

>
> Thanks.
>
> "Martin Casado"  wrote in message
> 
> >
> > > Hi,
> > >
> > > Since there is no test script (that I know of), I would like to know
> > > (besides the list of features) what things that we should test/look for
> > > before declaring our code ready and fully meets specs?
> >
> >  There is not a testing script for this assignment.  If your router
> supports
> >  all the required functionality and doesn't crash you will get full points
> for
> >  functionality.  The tests will include
> >
> >  1. ftping a relatively large file (and checksumming the file to ensure
> the
> >  data is intact)
> >  2. traceroute to the app servers, and to all the routers interfaces
> >  3. pinging to all the router's interfaces
> >  4. taking down one of the app servers and checking for arp queue
> timeouts.
> >
> >  /mc
> >
> >
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: ARP Requests/Retries
Date: Sun, 23 Feb 2003 18:39:43 -0800
Lines: 20
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1046054346 23974 128.12.195.69 (24 Feb 2003 02:39:06 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4608

>
>  It doesn't really matter. Choose whichever method you prefer and explain
your
>  design decision in the assignment writeup.  Of course, this somewhat
>  contradicts a previous post of mine which says that ARP resends should be
>  spaced out by no less than 200  milliseconds.  Since arp has been such a
>  salient point on the mailing list I perhaps we (the TAs and I) should be
very
>  clear about the required functionality.  In the end, if you send 5 arp
>  resends, using a reasonable method, and then timeout and send a no route
to
>  host icmp packet back to the sending host(s) you will have provided the
>  desired functionality.

Do we do 5 resends (for a total of 6 sends) or 4 resends (for a total of 5
sends). Please clarify thanks.




.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP Requests/Retries
Date: Sun, 23 Feb 2003 19:10:08 -0800
Lines: 22
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046056210 25091 171.64.15.80 (24 Feb 2003 03:10:10 GMT)
X-Complaints-To: 
To: Man Yu Lui 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4609


> >
> >  It doesn't really matter. Choose whichever method you prefer and explain
> your
> >  design decision in the assignment writeup.  Of course, this somewhat
> >  contradicts a previous post of mine which says that ARP resends should be
> >  spaced out by no less than 200  milliseconds.  Since arp has been such a
> >  salient point on the mailing list I perhaps we (the TAs and I) should be
> very
> >  clear about the required functionality.  In the end, if you send 5 arp
> >  resends, using a reasonable method, and then timeout and send a no route
> to
> >  host icmp packet back to the sending host(s) you will have provided the
> >  desired functionality.
>
> Do we do 5 resends (for a total of 6 sends) or 4 resends (for a total of 5
> sends). Please clarify thanks.

  5 resends for a total of 6 sends.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Kai-Min Sung" 
Newsgroups: su.class.cs244a
Subject: unicast ARP request
Date: Sun, 23 Feb 2003 23:15:18 -0800
Lines: 71
Distribution: su
Message-ID: 
NNTP-Posting-Host: sw-90-709-288-2.stanford.edu
X-Trace: news.Stanford.EDU 1046070917 2227 171.66.154.73 (24 Feb 2003 07:15:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4610

So I implemented basic ARP reply on my router and tested it by pinging my
web server:

PING www-kaisung.Stanford.EDU (192.168.128.41): 56 data bytes
no reply from www-kaisung.Stanford.EDU within 1 sec
no reply from www-kaisung.Stanford.EDU within 1 sec

(I don't get replies because I haven't implemented IP processing yet)

I used tcpdump logging on my simple router:

../sr -t 36 -l logfile

However, when I read the logfile, I see some strange output:

<---tcpdump output--->
....
23:04:00.164461 0:e0:81:3:fd:9e 70:0:0:24:0:1 ip 96: truncated-ip - 2 bytes
missing!elaine32.Stanford.EDU > www-kaisung.Stanford.EDU: icmp: echo request
(DF) (ttl
251, id 23793, len 84)
                         4500 0054 5cf1 4000 fb01 26b3 ab40 0f6b
                         c0a8 80b0 0800 6433 2867 0004 3e59 c3e0
                         0002 7e22 0809 0a0b 0c0d 0e0f 1011 1213
                         1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
                         2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
                         3435
23:04:00.815445 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8051 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 1213
                         1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
                         2425 2627 2829
23:04:01.164224 0:e0:81:3:fd:9e 70:0:0:24:0:1 ip 96: truncated-ip - 2 bytes
missing!elaine32.Stanford.EDU > www-kaisung.Stanford.EDU: icmp: echo request
(DF) (ttl
251, id 23794, len 84)
                         4500 0054 5cf2 4000 fb01 26b2 ab40 0f6b
                         c0a8 80b0 0800 648e 2867 0005 3e59 c3e1
                         0002 7dc5 0809 0a0b 0c0d 0e0f 1011 1213
                         1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
                         2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
                         3435
23:04:01.263844 0:e0:81:3:fd:9e 70:0:0:24:0:1 arp 84: arp who-has
kaisung-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8029 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 1213
                         1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
                         2425 2627 2829
23:04:01.264478 70:0:0:24:0:1 0:e0:81:3:fd:9e arp 42: arp reply
kaisung-router-1.Stanford.EDU is-at 70:0:0:24:0:1
                         0001 0800 0604 0002 7000 0024 0001 c0a8
                         8029 00e0 8103 fd9e ac18 4a11
....
<---tcpdump output--->

I notice that vr-firewall immediately sends the ICMP echo request to my
router, probably using a cached ARP from a previous run.  What does the
"truncated-ip - 2 bytes missing!" error mean?

After several unanswered echo requests, the ARP cache entry seems to expire
and the vr-firewall sends an ARP request (4th packet in the above output).
However, what's strange is that this ARP request is unicast, not broadcast!
Is something broken here?

Regards,
-Kai


.

Path: shelby.stanford.edu!not-for-mail
From: "Kai-Min Sung" 
Newsgroups: su.class.cs244a
Subject: Re: IP Header Alignment
Date: Sun, 23 Feb 2003 23:43:29 -0800
Lines: 144
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: sw-90-709-288-2.stanford.edu
X-Trace: news.Stanford.EDU 1046072609 3314 171.66.154.73 (24 Feb 2003 07:43:29 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4611

Would it help if you added the "packed" attribute to struct ip in
sr_protocol.h?

-Kai

"Mark Rabkin"  wrote in message

> Thanks, Steve.
>
> Turns out alignment is the issue, even if I use the "." operator...
>
> This program crashes on the elaine machines:
>
> ---------------------------------------
>   struct test
>   {
>     unsigned int t_hl : 4;
>     unsigned int t_v  : 4;
>   };
>
>   int main()
>   {
>     unsigned char cBuf[255];
>     struct test* tp;
>
>     tp = (struct test*) cBuf;
>     tp->t_hl = tp->t_v = 5;         /* works ok */
>
>     tp = (struct test*) (cBuf + 2);
>     tp->t_hl = tp->t_v = 5;         /* SEGFAULT */
>
>     return 0;
>   }
> ---------------------------------------
>
> It's just a buzzing annoyance, because I can't as easily operate on
> the IP header in place, and I'd rather not keep copying it back & forth :)
>
> By the way, I had tried GDB, and inside, it shows all correct values
> for all the 'struct ip' fields (including the two bit-fields!).  The
pointer
> looks ok too, it's just that it ends in "0x...0e", so it's not
4-byte-aligned.
>
> Guess you learn something new about C every day :)
>
> - Mark
>
>
> Steve Jacobson  wrote:
> > You are either failing due to an alignment error, or
> > because you are accessing past the end of the packet
> > array.
>
> > ip_hl is not even byte aligned, so it cannot be accessed
> > directly through a pointer.  The "." operator is the
> > correct way to access bit fields, as you have done in
> > your second example.
>
> > Also, what is the data type of packet[]?  You are indexing
> > into packet[] as if it were a character array.  If it is
> > not, you are indexing into the array by multiples of <data
> > type of packet>, not by multiples of bytes, which could
> > cause a segfault.
>
> > gdb (or ddd) can help you.  If a pointer dereference causes
> > a segfault, run under gdb.  After the segfault (or before,
> > if single stepping) "print" the value of the pointer; you
> > can then see if the address is reasonable, and correctly
> > aligned.  "x" (examine) is another useful command; you can
> > "x" in hex, making alignment checking easier.
>
> > SteveJ
>
> > In article 
> > Mark Rabkin   wrote:
> >>I was running into a nasty (hard-to-figure-out) crash for a while...
> >>
> >>The problem was with an incoming IP packet, which consists of the
> >>ethernet header (14 bytes), and then the IP header immediately after.
> >>
> >>I just did something like this:
> >>
> >>--------------------
> >>  struct ip *ip_hdr = (struct ip *)
> >>      &packet[sizeof(struct sr_ethernet_header)];
> >>
> >>  if (ip_hdr->ip_hl == 5)  <=== SEGFAULT RIGHT HERE
> >>  {
> >>    ...
> >>  }
> >>--------------------
> >>
> >>
> >>So, in effect, i'm setting my IP header pointer to index directly into
the
> >>packet array.  After that, if I try to access either one of the two
bitfield
> >>members at the beginning of the IP packet (both 4 bits, ip_v and ip_hl),
I
> >>would get a bus error.
> >>
> >>On the other hand, this works fine:
> >>
> >>--------------------
> >>  struct ip new_header;
> >>  struct ip *ip_hdr = (struct ip *)
> >>      &packet[sizeof(struct sr_ethernet_header)];
> >>
> >>  memcpy(&new_header, ip_hdr, sizeof(struct ip));
> >>
> >>  if (new_header.ip_hl == 5)
> >>  {
> >>    ...
> >>  }
> >>--------------------
> >>
> >>
> >>Basically, I can access that memory byte-by-byte to copy it out, but I
can't
> >>access the bit fields in place! Other fields, such as "ip_len", work
fine in
> >>place...
> >>
> >>Does anyone have a clear explanation as to why this would be?  My only
guess
> >>is that since the ethernet header is 14 bytes, the start of the IP
header
> >>isn't on a 4-byte-boundary, so it prevents whatever weirdness C uses to
> >>access bit-fields.....
> >>
> >>Anyway, just wanted to see if anyone else has run into this, or knows
why
> >>bit-fields would behave like this.
> >>
> >>Thanks,
> >>
> >>Mark
> >>
> >>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: Re: unicast ARP request
Date: Mon, 24 Feb 2003 10:48:56 +0000 (UTC)
Lines: 52
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1046083736 9386 171.64.15.100 (24 Feb 2003 10:48:56 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4612

Kai-Min Sung  wrote:

> (snip)
>
> 23:04:01.164224 0:e0:81:3:fd:9e 70:0:0:24:0:1 ip 96: truncated-ip - 2 bytes
> missing!elaine32.Stanford.EDU > www-kaisung.Stanford.EDU: icmp: echo request
> (DF) (ttl
> 251, id 23794, len 84)
>                          4500 0054 5cf2 4000 fb01 26b2 ab40 0f6b
>                          c0a8 80b0 0800 648e 2867 0005 3e59 c3e1
>                          0002 7dc5 0809 0a0b 0c0d 0e0f 1011 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
>                          3435
> (snip)
>
> I notice that vr-firewall immediately sends the ICMP echo request to my
> router, probably using a cached ARP from a previous run.  What does the
> "truncated-ip - 2 bytes missing!" error mean?

A not-helpful explanation:
The error is shown because the packet is 96 bytes, of which
14 are the ethernet header, leaving only 82 bytes for the IP packet.
However, the IP header states that the 'ip_len' field is 84 bytes, so
there two bytes that are missing off the end of the packet :(

I really have no idea WHY this happens, but I get this error also on all
the ICMP Echo Request packets I get, and it doesn't seem to hinder my code
any :) I think it's probably safe to ignore it, since this is the dump of
the raw packet as it comes in off the wire, you didn't generate the offending
packet, and haven't even touched it yet!

I'd like to hear an Official TA Stance on this though :)


> After several unanswered echo requests, the ARP cache entry seems to expire
> and the vr-firewall sends an ARP request (4th packet in the above output).
> However, what's strange is that this ARP request is unicast, not broadcast!
> Is something broken here?

I get such packets from vr-firewall too... Don't know why it does it,
(or why it sends out an ARP packet once a second to ssho-router-1), but
I'm sure it's just using some weird algorithm to make sure all of its
ARP cache entries stay fresh... I also treated this like nothing to really
worry about, just made sure I sent the appropriate replies and it seems
all good :)

I'd be really interested to know the real reasons why this behavior occurs,
though, too :)

- Mark

.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: Re: Testing
Date: Mon, 24 Feb 2003 10:58:46 +0000 (UTC)
Lines: 45
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1046084326 9757 171.64.15.100 (24 Feb 2003 10:58:46 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4613

Martin Casado  wrote:

>> Hi,
>>
>> Since there is no test script (that I know of), I would like to know
>> (besides the list of features) what things that we should test/look for
>> before declaring our code ready and fully meets specs?

>  There is not a testing script for this assignment.  If your router supports
>  all the required functionality and doesn't crash you will get full points for
>  functionality.  The tests will include

>  1. ftping a relatively large file (and checksumming the file to ensure the
>  data is intact)
>  2. traceroute to the app servers, and to all the routers interfaces
>  3. pinging to all the router's interfaces
>  4. taking down one of the app servers and checking for arp queue timeouts.

>  /mc


(4)

Is there any clean way in which we can test our final code to see if the ARP
Queue Timeouts work?  We'd have to somehow create a situation where there
is no host to reply to our ARP requests, and I don't know which one to try :)

I managed to test it a bit by purposefully botching my code to send ARP
requests into nowhere (just send them to ethernet address 0:0:0:0:0:0 instead
of the ff:ff:ff:ff:ff:ff normally used), but that's pretty ugly, and I'm
hoping for a better way to test.


Also: 

Just out of curiosity, are 'telnet' packets not forwarded to the virtual
client?  I tried to telnet into my router to see if it would generate an
ICMP Port Unreachable, but no packets ever arrived...

Thanks,

- Mark



.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: unicast ARP request
Date: Mon, 24 Feb 2003 07:57:36 -0800
Lines: 78
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046102257 18774 171.64.15.80 (24 Feb 2003 15:57:37 GMT)
X-Complaints-To: 
To: Kai-Min Sung 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4614


> So I implemented basic ARP reply on my router and tested it by pinging my
> web server:
>
> PING www-kaisung.Stanford.EDU (192.168.128.41): 56 data bytes
> no reply from www-kaisung.Stanford.EDU within 1 sec
> no reply from www-kaisung.Stanford.EDU within 1 sec
>
> (I don't get replies because I haven't implemented IP processing yet)
>
> I used tcpdump logging on my simple router:
>
> ./sr -t 36 -l logfile
>
> However, when I read the logfile, I see some strange output:
>
> <---tcpdump output--->
> ...
> 23:04:00.164461 0:e0:81:3:fd:9e 70:0:0:24:0:1 ip 96: truncated-ip - 2 bytes
> missing!elaine32.Stanford.EDU > www-kaisung.Stanford.EDU: icmp: echo request
> (DF) (ttl
> 251, id 23793, len 84)
>                          4500 0054 5cf1 4000 fb01 26b3 ab40 0f6b
>                          c0a8 80b0 0800 6433 2867 0004 3e59 c3e0
>                          0002 7e22 0809 0a0b 0c0d 0e0f 1011 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
>                          3435
> 23:04:00.815445 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
> ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829
> 23:04:01.164224 0:e0:81:3:fd:9e 70:0:0:24:0:1 ip 96: truncated-ip - 2 bytes
> missing!elaine32.Stanford.EDU > www-kaisung.Stanford.EDU: icmp: echo request
> (DF) (ttl
> 251, id 23794, len 84)
>                          4500 0054 5cf2 4000 fb01 26b2 ab40 0f6b
>                          c0a8 80b0 0800 648e 2867 0005 3e59 c3e1
>                          0002 7dc5 0809 0a0b 0c0d 0e0f 1011 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
>                          3435
> 23:04:01.263844 0:e0:81:3:fd:9e 70:0:0:24:0:1 arp 84: arp who-has
> kaisung-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8029 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829
> 23:04:01.264478 70:0:0:24:0:1 0:e0:81:3:fd:9e arp 42: arp reply
> kaisung-router-1.Stanford.EDU is-at 70:0:0:24:0:1
>                          0001 0800 0604 0002 7000 0024 0001 c0a8
>                          8029 00e0 8103 fd9e ac18 4a11
> ...
> <---tcpdump output--->
>
> I notice that vr-firewall immediately sends the ICMP echo request to my
> router, probably using a cached ARP from a previous run.  What does the
> "truncated-ip - 2 bytes missing!" error mean?

I've never seen this error ..  though you are probably correct that an old arp
entry is bieng used to forward the pack to your router.

does anyone else know?

> After several unanswered echo requests, the ARP cache entry seems to expire
> and the vr-firewall sends an ARP request (4th packet in the above output).
> However, what's strange is that this ARP request is unicast, not broadcast!
> Is something broken here?

... strange. If I sit on the vr-server-b with tcpdump all the arp packets I
see are sent to broadcast.  I'll look into it.

/mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Testing
Date: Mon, 24 Feb 2003 08:00:08 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046102409 18861 171.64.15.80 (24 Feb 2003 16:00:09 GMT)
X-Complaints-To: 
To: Mark Rabkin 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4615

>
> Is there any clean way in which we can test our final code to see if the ARP
> Queue Timeouts work?  We'd have to somehow create a situation where there
> is no host to reply to our ARP requests, and I don't know which one to try :)

 I tested mine by having sr_handlepacket() drop all arp replies from the
 host I wanted to kill.

>
> I managed to test it a bit by purposefully botching my code to send ARP
> requests into nowhere (just send them to ethernet address 0:0:0:0:0:0 instead
> of the ff:ff:ff:ff:ff:ff normally used), but that's pretty ugly, and I'm
> hoping for a better way to test.
>
>
> Also:
>
> Just out of curiosity, are 'telnet' packets not forwarded to the virtual
> client?  I tried to telnet into my router to see if it would generate an
> ICMP Port Unreachable, but no packets ever arrived...

 the firewall will not let telnet through.

 /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: unicast ARP request
Date: Mon, 24 Feb 2003 08:05:53 -0800
Lines: 42
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046102754 18951 171.64.15.80 (24 Feb 2003 16:05:54 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4616


>
> A not-helpful explanation:
> The error is shown because the packet is 96 bytes, of which
> 14 are the ethernet header, leaving only 82 bytes for the IP packet.
> However, the IP header states that the 'ip_len' field is 84 bytes, so
> there two bytes that are missing off the end of the packet :(
>
> I really have no idea WHY this happens, but I get this error also on all
> the ICMP Echo Request packets I get, and it doesn't seem to hinder my code
> any :) I think it's probably safe to ignore it, since this is the dump of
> the raw packet as it comes in off the wire, you didn't generate the offending
> packet, and haven't even touched it yet!

 Ahh I see the problem, the packet snaplen for writing to the log file is
 96 therefore truncating the packet.... (see PACKET_DUMP_SIZE sr_router.h).
 Don't worry about this, you can increase the snaplen if you want but there is
 really no reason to do this.

>
>
> > After several unanswered echo requests, the ARP cache entry seems to expire
> > and the vr-firewall sends an ARP request (4th packet in the above output).
> > However, what's strange is that this ARP request is unicast, not broadcast!
> > Is something broken here?
>
> I get such packets from vr-firewall too... Don't know why it does it,
> (or why it sends out an ARP packet once a second to ssho-router-1), but
> I'm sure it's just using some weird algorithm to make sure all of its
> ARP cache entries stay fresh... I also treated this like nothing to really
> worry about, just made sure I sent the appropriate replies and it seems
> all good :)
>
> I'd be really interested to know the real reasons why this behavior occurs,
> though, too :)

 I think this is a function of the server or the dumper and not the packet ...
 I get the same results.  This should not affect what you are doing .. but I
 will look into it anyhow... more later.

 /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Eric Ogren" 
Newsgroups: su.class.cs244a
Subject: firewall and icmp packets?
Date: Mon, 24 Feb 2003 09:03:56 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: eogren.stanford.edu
X-Trace: news.Stanford.EDU 1046106238 20422 128.12.95.90 (24 Feb 2003 17:03:58 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4617

Hey there -

 Has anyone else had trouble getting their traceroute packets working
correctly? It seems from the packet dumps that I'm doing that the firewall
is actually blocking my outgoing ICMP packets...
 For example, when trying to traceroute to ftp-eogren, my router generates a
TTL exceeded message; ethereal shows that the message is correctly put
together at the ICMP, IP, and link levels - it sees a packet going to
vr-firewall, yet the host I was running on (elaine27) never got it.
Interestingly, it could receive the port unreachable messages from
ftp-eogren fine - that and the packet dumps make me at least somewhat
confident that I'm not screwing up my ICMP handling...

any ideas?
Eric


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: firewall and icmp packets?
Date: Mon, 24 Feb 2003 09:32:39 -0800
Lines: 42
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046107960 21267 171.64.15.80 (24 Feb 2003 17:32:40 GMT)
X-Complaints-To: 
To: Eric Ogren 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4618



 Traceroutes are working fine..

elaine15:~> traceroute 192.168.128.97
traceroute to vns-echo-router-1.Stanford.EDU (192.168.128.97): 1-30 hops, 38 byte packets
 1  leland-gateway.Stanford.EDU (171.64.15.65)  1.22 ms  1.84 ms  1.79 ms
 2  smra-rtr.Stanford.EDU (171.64.1.236)  1.61 ms (ttl=63!)  1.54 ms (ttl=63!)  1.45 ms (ttl=63!)
 3  171.64.1.44 (171.64.1.44)  0.677 ms  0.694 ms  0.446 ms
 4  vr-firewall.Stanford.EDU (171.64.74.9)  1.23 ms  0.827 ms  0.674 ms
 5  vns-echo-router-1.Stanford.EDU (192.168.128.97)  1.95 ms  2.12 ms  1.74 ms
elaine15:~>

 pings too ...

elaine15:~> ping 192.168.128.97
PING vns-echo-router-1.Stanford.EDU (192.168.128.97): 56 data bytes
64 bytes from vns-echo-router-1.Stanford.EDU (192.168.128.97): seq=0 ttl=251 time=13.5 ms.
64 bytes from vns-echo-router-1.Stanford.EDU (192.168.128.97): seq=1 ttl=251 time=2.00 ms.
64 bytes from vns-echo-router-1.Stanford.EDU (192.168.128.97): seq=2 ttl=251 time=2.06 ms.

 /mc

> Hey there -
>
>  Has anyone else had trouble getting their traceroute packets working
> correctly? It seems from the packet dumps that I'm doing that the firewall
> is actually blocking my outgoing ICMP packets...
>  For example, when trying to traceroute to ftp-eogren, my router generates a
> TTL exceeded message; ethereal shows that the message is correctly put
> together at the ICMP, IP, and link levels - it sees a packet going to
> vr-firewall, yet the host I was running on (elaine27) never got it.
> Interestingly, it could receive the port unreachable messages from
> ftp-eogren fine - that and the packet dumps make me at least somewhat
> confident that I'm not screwing up my ICMP handling...
>
> any ideas?
> Eric
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: 7 questions on #3
Date: Mon, 24 Feb 2003 17:46:26 +0000 (UTC)
Lines: 87
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
X-Trace: news.Stanford.EDU 1046108786 21248 171.64.74.37 (24 Feb 2003 17:46:26 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-18.8.0 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4619

Keith,

> It looks like the stub code already loads the 
> routing table, so when Guido emphasized that we 
> should use the dynamic routing table; he meant 
> that we need to add a couple more lines to the 
> file rtable, and in our code merely query what 
> has been set up for us, rather than create a 
> redundant static version, correct?  CIDR is not 

Yes, the idea is to bild on the existing version. We will likely test with a different routing table so hard-coding one won't work.

> mentioned anywhere in the assignment, so we do 
> NOT need to set up for "longest match", correct?  
> If I recall Guido's routing table slide 
> correctly, it seems like exact match exact match 
> is sufficient, unless/will the TAs will be 
> testing with a broader [subnetted] virtual 
> network?

You can expect the routing table to be sorted. Exact match of IP is *NOT* sufficient though, you have to use the netmask correctly.

> There does seem to be differences in the ICMP 
> formats for RFC 792 and RFC 777.  These are dated 
> Sept 1981 and April 1981 respectively; so, RFC 
> 792 appears more current.  However, RFC792 is 
> also titled as the DARPA version.  We should 
> follow RFC 777, ignore RFC 792, correct?

As RFC 792 indicates in the header it updates RFC 777 and 760. Always use the latest RFC. I am not sure what the differences between the two are though. ANything major?

> our routers should respond to with an ICMP port 
> unreachable for a "tcp/udp packet sent to one of 
> its interfaces", it really means "ADDRESSED to 
> one of its interfaces", correct?  That is, we 
> are NOT supposed to intercept tcp/udp packets 
> being sent through our router to our virtual 
> servers, correct?

Yes.

> Once my code is working, and I drive to Stanford, 
> get on an elaine to start up my code, get on 
> another elaine, open a browser, and go for www-
> primdahl, what will I get?  Does each virtual web 
> server have one or more web pages already in 
> place?

Yes.

> Similarly, once my code is working, I should be 
> able to [remotely] ssh to an elaine and start my 
> code, the open another window to ssh to another 
> elaine and "ftp ftp-primdahl", correct?  Then I 

Yes.

> just use the commands from "man ftp" to execute 
> ftp, correct?  Am I to ftp my own files back to 
> myself for testing?  In other words, the ftp-
> primdahl server will have access to the same 
> directory structure as any elaine?  Or is there a 
> "public directory" and sample files for 
> downloading on each virtual ftp server?

There is a download_me file on your personal ftp server.

> I've tried "man ethereal" and "man Ethereal" but 
> get nothing.  Meanwhile, I've found 
> www.ethereal.com, but am doubting that each of 
> use is expected to download the unix version to 
> our individual pa3 disk space.  Where should I be 
> looking to get ethereal going?  Ditto EtherApe, 
> http://etherape.sourceforge.net/ 

Etherape must have been a typo, where did we mention it?
Where to find it is a FAQ! 
/usr/class/cs244a/bin 

> What are we expected to deliver?  I'm thinking 
> that all my coding will be in sr_router.h and 
> sr_router.c (and rtable), okay?  Are submit 
> instructions forthcoming?

I believe sr_router.{c|h} are the only files you need to modify. Submit all files needed for compiling your code. We'll fix the assignment to clarify this.

  Guido
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: unicast ARP request
Date: Mon, 24 Feb 2003 17:54:21 +0000 (UTC)
Lines: 25
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: caliban.stanford.edu
X-Trace: news.Stanford.EDU 1046109261 21248 171.64.74.37 (24 Feb 2003 17:54:21 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-18.8.0 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4620

>> After several unanswered echo requests, the ARP cache entry seems to expire
>> and the vr-firewall sends an ARP request (4th packet in the above output).
>> However, what's strange is that this ARP request is unicast, not broadcast!
>> Is something broken here?

I believe this is an artevact of the VNS, just ignore it. 

> I get such packets from vr-firewall too... Don't know why it does it,
> (or why it sends out an ARP packet once a second to ssho-router-1), but
i
Because some (*^*&$-Person has a completely misconfigured PC running in packard that sends out a packet every second to ssho-ftp every second. I mailed him to fix it but so far no reply. Welcome to the internet.

  Guido


> I'm sure it's just using some weird algorithm to make sure all of its
> ARP cache entries stay fresh... I also treated this like nothing to really
> worry about, just made sure I sent the appropriate replies and it seems
> all good :)

> I'd be really interested to know the real reasons why this behavior occurs,
> though, too :)

> - Mark

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: firewall and icmp packets?
Date: Mon, 24 Feb 2003 17:58:00 +0000 (UTC)
Lines: 28
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046109480 21248 171.64.74.37 (24 Feb 2003 17:58:00 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-18.8.0 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4621

Eric,

let's see:
- the beta submission did work with tcpdump
- we tested plenty of topos and it worked for us

Are you sure there is no bug? Is tcpdump w/ -vv happy. Ethereal as well?

  GUido

Eric Ogren  wrote:
> Hey there -

>  Has anyone else had trouble getting their traceroute packets working
> correctly? It seems from the packet dumps that I'm doing that the firewall
> is actually blocking my outgoing ICMP packets...
>  For example, when trying to traceroute to ftp-eogren, my router generates a
> TTL exceeded message; ethereal shows that the message is correctly put
> together at the ICMP, IP, and link levels - it sees a packet going to
> vr-firewall, yet the host I was running on (elaine27) never got it.
> Interestingly, it could receive the port unreachable messages from
> ftp-eogren fine - that and the packet dumps make me at least somewhat
> confident that I'm not screwing up my ICMP handling...

> any ideas?
> Eric


.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Office hours today 1 hour later...
Date: Mon, 24 Feb 2003 18:00:11 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
X-Trace: news.Stanford.EDU 1046109611 22131 171.64.74.37 (24 Feb 2003 18:00:11 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-18.8.0 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4622

My office hours today will be from 6pm to 8pm (and not from 5pm to 7pm as usual). Apologies for any inconvenience and send me email if for some reason this does not work for you.

  Guido


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: unicast ARP request
Date: Mon, 24 Feb 2003 10:14:02 -0800
Lines: 20
Distribution: su
Message-ID: 
References:  
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046110443 22658 171.64.15.80 (24 Feb 2003 18:14:03 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4623


> >> After several unanswered echo requests, the ARP cache entry seems to expire
> >> and the vr-firewall sends an ARP request (4th packet in the above output).
> >> However, what's strange is that this ARP request is unicast, not broadcast!
> >> Is something broken here?
>
> I believe this is an artevact of the VNS, just ignore it.
>
> > I get such packets from vr-firewall too... Don't know why it does it,
> > (or why it sends out an ARP packet once a second to ssho-router-1), but
> i
> Because some (*^*&$-Person has a completely misconfigured PC running in packard that sends out a packet every second to ssho-ftp every second. I mailed him to fix it but so far no reply. Welcome to the internet.
>
>   Guido

  I saw this too, would be a nice thing to clear up.  Could we add a firewall
  rule to vr-firewall to drop packets to vr-sshe from that particular machine?

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Eric Ogren" 
Newsgroups: su.class.cs244a
Subject: Re: firewall and icmp packets?
Date: Mon, 24 Feb 2003 11:30:41 -0800
Lines: 40
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: eogren.stanford.edu
X-Trace: news.Stanford.EDU 1046115042 25768 128.12.95.90 (24 Feb 2003 19:30:42 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4624

Yeah, I screwed up - I was putting the offending header + first 8 bytes
immediately after the ICMP header instead of leaving 4 bytes of 0s
in-between...Sorry for the false alarm :)

Eric

"Guido Appenzeller"  wrote in message

> Eric,
>
> let's see:
> - the beta submission did work with tcpdump
> - we tested plenty of topos and it worked for us
>
> Are you sure there is no bug? Is tcpdump w/ -vv happy. Ethereal as well?
>
>   GUido
>
> Eric Ogren  wrote:
> > Hey there -
>
> >  Has anyone else had trouble getting their traceroute packets working
> > correctly? It seems from the packet dumps that I'm doing that the
firewall
> > is actually blocking my outgoing ICMP packets...
> >  For example, when trying to traceroute to ftp-eogren, my router
generates a
> > TTL exceeded message; ethereal shows that the message is correctly put
> > together at the ICMP, IP, and link levels - it sees a packet going to
> > vr-firewall, yet the host I was running on (elaine27) never got it.
> > Interestingly, it could receive the port unreachable messages from
> > ftp-eogren fine - that and the packet dumps make me at least somewhat
> > confident that I'm not screwing up my ICMP handling...
>
> > any ideas?
> > Eric
>
>


.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: Problem Set #3 questions
Date: Mon, 24 Feb 2003 11:54:48 -0800
Lines: 34
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046116490 26678 171.64.15.69 (24 Feb 2003 19:54:50 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4625

hi! need some clarifications on:

Problem #1 (e)
to calculate AvgLen[n], we need to know Length[n]. the problem statement
says that "after [the initial burst of 100 packets], packets arrive at the
same rate that they depart". however, it does not specify an arrivate rate
(i.e. Length[n]) that we need to make the calculation?

are we free to assume an arbitrary number here? if yes, the resulting
AvgLen[n] values will be different for different arrival rate chosen. is
this acceptable?

Problem # 2 (b)
part (a) of the problem states that "... the first router allocates the
flow a service rate greater than or equal to c (where c > rou)"

for part (b), if R = rou, do we just use c = rou ? (since "c" has an
upperbound of R, correct?)

Problem #3 (b)
* can we assume a numerical relationship between PROP and PROP_min (e.g.
PROP = N * PROP_min, where N+1 is the number of hosts on that ethernet
segment)?
* in our new CSMA/CD scheme, should we try to maximize the usage of the
link? OR, detecting/avoiding collision is the only thing under
consideration here? for example, we may define "TRANSP > 2*PROP_min", send
a packet, wait 2*PROP, then send another packet. this mechanism wastes a
lot of time waiting for collision signal to arrive at transmitter. i guess
this is NOT a valid answer, correct?

thanks!

Tan

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: guido's slides
Date: Mon, 24 Feb 2003 14:15:31 -0800
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046124926 2116 171.64.74.37 (24 Feb 2003 22:15:26 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4626

Jonathan,

they are posted now on the time table.

  Guido

Jonathan D Herbach wrote:
> I don't see guido's slides from yesterday on the "Timetable" page; are
> they in another location?
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: router table
Date: Mon, 24 Feb 2003 14:22:51 -0800
Lines: 72
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046125366 2526 171.64.74.37 (24 Feb 2003 22:22:46 GMT)
X-Complaints-To: 
Cc: Jonathan D Herbach 
To: Martin Casado 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4627

Jonathan,

to chip in here real quick:

>>I'm not sure how my router knows which interface contains www-netid an
>>ftp-netid. 

It doesn't. But the topology email you received tells you which host is 
on which if and you can write a routing table that implements this. 
Generally dumb (i.e. non RIP/BGP/etc.) routers have no idea of topology 
other than the routing table.

>> One option is to edit my rtable file to include the following
>>two entries
>>192.168.128.64	192.168.128.64	255.255.255.255	eth1
>>192.168.129.109	192.168.129.109	255.255.255.255 eth2
>>
>>(These correspond to www-jherbach and ftp-jherbach, respectively.)

As Martin said this is the idea here.

>>
>>Another option might be to generate ARP requests on all interfaces and see
>>if we receive a reply from one interface for said IP. If we do, then we
>>encode that into our routing table dynamically. If we don't, then we add
>>that as a "default route" through the eth0 gateway.
> 
> 
>>If we use the former version, we're only going to be dealing with
>>255.255.255.255 and 0.0.0.0 subnet masks. I assume that we should have our

Why is that? You could use an entry like:

192.168.129.64  * 255.255.255.248 eth1

this would route correctly to a whole subnet.

>>code work with others, and we should use the "longest prefix matching"

You can assume the routing table is sorted, that is the longest prefixes 
come first.

>>sort of algorithm? Or is that a "not required but smiled upon" feature --
>>i.e., we are only required to support 0.0.0.0 and 255.255.255.255?

Only supporting 0.0.0.0 and 255.255.255.255 is definitely *NOT* sufficient.

   Guido




>>
> 
> 
>   Jonathan,
> 
>     This is a good point.  As you state, the assignment talks about it in the
>     "not required but smiled upon" section ... pretty much you are only
>     required to support the former method ... using a rtable that looks like
>     the following (with the default route added of course).
> 
>      192.168.128.64     192.168.128.64   255.255.255.255   eth1
>      192.168.129.109    192.168.129.109  255.255.255.255   eth2
> 
>      Of course, given well defined subnets with multiple hosts off each
>      interface you'd want to specify a subnet in the routing table without a
>      next hop so the router could arp for the end host.
> 
>      /mc
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: unicast ARP request
Date: Mon, 24 Feb 2003 14:29:31 -0800
Lines: 28
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046125766 2593 171.64.74.37 (24 Feb 2003 22:29:26 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4628

>>I notice that vr-firewall immediately sends the ICMP echo request to my
>>router, probably using a cached ARP from a previous run.  What does the
>>"truncated-ip - 2 bytes missing!" error mean?
> 
> 
> I've never seen this error ..  though you are probably correct that an old arp
> entry is bieng used to forward the pack to your router.
> 
> does anyone else know?

It's the 96 byte limit of the dumping code in the stub :-)

   Guido

> 
> 
>>After several unanswered echo requests, the ARP cache entry seems to expire
>>and the vr-firewall sends an ARP request (4th packet in the above output).
>>However, what's strange is that this ARP request is unicast, not broadcast!
>>Is something broken here?
> 
> 
> .. strange. If I sit on the vr-server-b with tcpdump all the arp packets I
> see are sent to broadcast.  I'll look into it.
> 
> /mc
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Pls post stats for pp2
Date: Mon, 24 Feb 2003 15:07:35 -0800
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046128050 4447 171.64.74.37 (24 Feb 2003 23:07:30 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4629

Min 0, Max 100, Average 78.About half of you did 90+, a few between 80 
and 90, there is another cluster aroung 60 and the rest is all over the 
map. Not bad, it's a hard assignment.

   Guido

.

Path: shelby.stanford.edu!not-for-mail
From: Mark Rabkin 
Newsgroups: su.class.cs244a
Subject: ARP Cache Timeouts
Date: Mon, 24 Feb 2003 23:11:04 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
X-Trace: news.Stanford.EDU 1046128264 4459 171.64.15.100 (24 Feb 2003 23:11:04 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4630

Quick question this time :)

If we already have an entry for host X in our ARP Cache, and we then
receive a broadcast ARP Request from host X that is NOT intended for
us, do we:

- Update the timestamp on our ARP Cache entry, since this packet 
  still verifies both the IP and Hardware addresses of Host X.

or

- Ignore the packet completely, since the TIP field is not us?


Thanks,

- Mark

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP Cache Timeouts
Date: Mon, 24 Feb 2003 16:00:38 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046131239 6947 171.64.15.80 (25 Feb 2003 00:00:39 GMT)
X-Complaints-To: 
To: Mark Rabkin 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4631


> Quick question this time :)
>
> If we already have an entry for host X in our ARP Cache, and we then
> receive a broadcast ARP Request from host X that is NOT intended for
> us, do we:
>
> - Update the timestamp on our ARP Cache entry, since this packet
>   still verifies both the IP and Hardware addresses of Host X.
>
> or
>
> - Ignore the packet completely, since the TIP field is not us?

 Aother good question, I think the latter is more appropriate since the
 topologies are supposed to be isolated. Though only indirectly relevant, keep
 in mind that acceptance of gratuitous arps is a security risk and often used
 for redirection attacks on LANs.

 /mc

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Problem Set #3 questions
Date: Tue, 25 Feb 2003 03:51:47 +0000 (UTC)
Lines: 43
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: myth7.stanford.edu
X-Trace: news.Stanford.EDU 1046145107 15571 171.64.15.21 (25 Feb 2003 03:51:47 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4632

Tan,

> Problem #1 (e)
> to calculate AvgLen[n], we need to know Length[n]. the problem statement
> says that "after [the initial burst of 100 packets], packets arrive at the
> same rate that they depart". however, it does not specify an arrivate rate
> (i.e. Length[n]) that we need to make the calculation?
> are we free to assume an arbitrary number here? if yes, the resulting
> AvgLen[n] values will be different for different arrival rate chosen. is
> this acceptable?

I think your thinking is down a wrong path here. The arrival rate is not
important for the reply here. If arrival and departure rate are the same
the the queue lenght stays constant. In other words: Length[n] = const.
Does that make sense to you?

> Problem # 2 (b)
> part (a) of the problem states that "... the first router allocates the
> flow a service rate greater than or equal to c (where c > rou)"
> for part (b), if R = rou, do we just use c = rou ? (since "c" has an
> upperbound of R, correct?)

No, c could be greater than R, it's only constraint is being greater than roh.

> Problem #3 (b)
> * can we assume a numerical relationship between PROP and PROP_min (e.g.
> PROP = N * PROP_min, where N+1 is the number of hosts on that ethernet
> segment)?

No. They are not necessarily have to be evenly spaced out or anything like
that. Assume you don't know N.

> * in our new CSMA/CD scheme, should we try to maximize the usage of the
> link? OR, detecting/avoiding collision is the only thing under
> consideration here? for example, we may define "TRANSP > 2*PROP_min", send
> a packet, wait 2*PROP, then send another packet. this mechanism wastes a
> lot of time waiting for collision signal to arrive at transmitter. i guess
> this is NOT a valid answer, correct?

Correct. 

  Guido

.

Path: shelby.stanford.edu!saga0.Stanford.EDU!jherbach
From: Jonathan D Herbach 
Newsgroups: su.class.cs244a
Subject: forwarding unknown dest address
Date: Mon, 24 Feb 2003 22:01:08 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga0.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046152869 20737 171.64.15.130 (25 Feb 2003 06:01:09 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4633

Re: Guido's slide #6.

Steps in forwarding an IP packet within router:
"Lookup packet DA in forwarding table. If unknown, drop packet and send
ICMP message."

What is this unknown thing? Shouldn't we hand off "unknown" destinations
to the gateway on the default route and let it handle this? Aren't all
"unknown" addresses really just "somewhere else out on the internet"?



.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: forwarding unknown dest address
Date: Tue, 25 Feb 2003 06:20:08 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046154008 21314 171.64.15.112 (25 Feb 2003 06:20:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4634

Guido's slide is correct.  Remember that you are coding
for a routing table with arbitrary contents.  It may not
contain a default route, and it may not contain an appropriate
route for the packet we want to forward.

SteveJ

>Re: Guido's slide #6.
>
>Steps in forwarding an IP packet within router:
>"Lookup packet DA in forwarding table. If unknown, drop packet and send
>ICMP message."
>
>What is this unknown thing? Shouldn't we hand off "unknown" destinations
>to the gateway on the default route and let it handle this? Aren't all
>"unknown" addresses really just "somewhere else out on the internet"?
>
.

Path: shelby.stanford.edu!not-for-mail
From: "Matthew Holliman" 
Newsgroups: su.class.cs244a
Subject: ARP retries
Date: Tue, 25 Feb 2003 00:03:28 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: gatesb02-pc16.stanford.edu
X-Trace: news.Stanford.EDU 1046160087 24583 171.64.65.35 (25 Feb 2003 08:01:27 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4635

Just curious. WHen I do ping on my eth0 of my client from the elaine
machine's I get an ARP to which I respond. Now, if I keep getting ARP's for
my eth0 IP address and no other type of packet, am I not responding
correctly to the ARP ? the ether_type fpr my ethernet hdr is always 0x0806.




.

Path: shelby.stanford.edu!not-for-mail
From: "Aseem Sharma" 
Newsgroups: su.class.cs244a
Subject: Re: ARP retries
Date: Tue, 25 Feb 2003 00:09:06 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: gatesb02-pc16.stanford.edu
X-Trace: news.Stanford.EDU 1046160425 24676 171.64.65.35 (25 Feb 2003 08:07:05 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4636

Sorry about the wrong name. I guess Matthew uses this machine and outlook
doesn't take person's logged in name. This question is posted by me - Aseem

"Matthew Holliman"  wrote in message

> Just curious. WHen I do ping on my eth0 of my client from the elaine
> machine's I get an ARP to which I respond. Now, if I keep getting ARP's
for
> my eth0 IP address and no other type of packet, am I not responding
> correctly to the ARP ? the ether_type fpr my ethernet hdr is always
0x0806.
>
>
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Kai-Min Sung" 
Newsgroups: su.class.cs244a
Subject: IP src address when sending ICMP echo reply
Date: Tue, 25 Feb 2003 01:33:52 -0800
Lines: 15
Distribution: su
Message-ID: 
NNTP-Posting-Host: sw-90-709-288-2.stanford.edu
X-Trace: news.Stanford.EDU 1046165632 27674 171.66.154.73 (25 Feb 2003 09:33:52 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4637

When we receive an ICMP echo request addressed to our router from machine A,
can we simply swap the IP src/dst addresses from the request packet and use
that in our reply packet? Or should we determine the reply packet's IP src
address by doing a route lookup for machine A and then using the IP address
of the selected outgoing interface?  Seems to me we should get the same IP
address in either case because packets arriving from machine A and packets
sent to machine A should use the same interface. But could there be a
degenerate case (misconfigured routing table) where this isn't true (packets
arrive from machine A on interface 1, but packets sent to machine A leave
interface 2)?

Regards,
-Kai


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP retries
Date: Tue, 25 Feb 2003 12:24:16 -0800
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046204658 17724 171.64.15.80 (25 Feb 2003 20:24:18 GMT)
X-Complaints-To: 
To: Matthew Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4638


 Please post a tcpdump hex dump of the traffic to/from your router otherwise
 there is no way we can tell if you are sending the correct packets.

 /mc

> Just curious. WHen I do ping on my eth0 of my client from the elaine
> machine's I get an ARP to which I respond. Now, if I keep getting ARP's for
> my eth0 IP address and no other type of packet, am I not responding
> correctly to the ARP ? the ether_type fpr my ethernet hdr is always 0x0806.
>
>
>
>
>

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: IP src address when sending ICMP echo reply
Date: Tue, 25 Feb 2003 12:28:54 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046204936 17994 171.64.15.80 (25 Feb 2003 20:28:56 GMT)
X-Complaints-To: 
To: Kai-Min Sung 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4639


> When we receive an ICMP echo request addressed to our router from machine A,
> can we simply swap the IP src/dst addresses from the request packet and use
> that in our reply packet? Or should we determine the reply packet's IP src
> address by doing a route lookup for machine A and then using the IP address
> of the selected outgoing interface?  Seems to me we should get the same IP
> address in either case because packets arriving from machine A and packets
> sent to machine A should use the same interface. But could there be a
> degenerate case (misconfigured routing table) where this isn't true (packets
> arrive from machine A on interface 1, but packets sent to machine A leave
> interface 2)?

 Awesome question!  All packets originating from the router should consult the
 routing table for the source address/outgoing interface.  There is no
 reason to believe that routes are bidirectional.

 /mc

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: trouble ping/traceroute
Date: Tue, 25 Feb 2003 12:31:44 -0800
Lines: 31
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046205105 18164 171.64.15.69 (25 Feb 2003 20:31:45 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4640

for some reason, the only packets receive seem to be all from the same
source and my client  does not receive any packet that's destined for it
(or the firewall does not forward any packet to my client?).

tcpdump of the only type of packet i receive:
12:24:11.791426 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8051 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 0000
                         0000 0000 0260 0000 0000 0000 0000 0000
                         0000 0000 0000

the command I used to run VN client is --
"./sr -s vr-server-a -t 85 -l logfile"

and the result of the traceroute is --
"> traceroute 192.168.128.90
traceroute to wwtgao-router-1.Stanford.EDU (192.168.128.90): 1-30 hops, 38
byte packets
 1  leland-gateway.Stanford.EDU (171.64.15.65)  1.58 ms  1.45 ms  1.88 ms
 2  smra-rtr.Stanford.EDU (171.64.1.236)  3.11 ms (ttl=63!)  3.30 ms
(ttl=63!)  2.89 ms (ttl=63!)
 3  Gates-rtr.Stanford.EDU (171.64.1.44)  1.94 ms  3.84 ms  1.56 ms
 4  vr-firewall.Stanford.EDU (171.64.74.9)  1.29 ms  1.01 ms  1.23 ms
 5  vr-firewall.Stanford.EDU (171.64.74.9)  2993 ms (ttl=252!) !H  3000 ms
(ttl=252!) !H  3001 ms (ttl=252!) !H"

any clue? thanks!
Tan

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: trouble ping/traceroute
Date: Tue, 25 Feb 2003 20:52:46 +0000 (UTC)
Lines: 56
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
X-Trace: news.Stanford.EDU 1046206366 18581 171.64.74.37 (25 Feb 2003 20:52:46 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-18.8.0 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4641

Tan,

Tan Gao (weiwei)"  wrote:
> for some reason, the only packets receive seem to be all from the same
> source and my client  does not receive any packet that's destined for it
> (or the firewall does not forward any packet to my client?).

> tcpdump of the only type of packet i receive:
> 12:24:11.791426 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
> ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0260 0000 0000 0000 0000 0000
>                          0000 0000 0000

This is again the obnoxious host in packard that spams ftp-ssho0. They are not packets that are intended for you. Your router should detect that (the IP that's asked for is not its ip) and ignore them. See also the previous post on this.

I just ran what you did using ping instead of traceroute (which makes no difference) and here is what I get:

elaine12:~/tmp/sr_stub> ./sr -s vr-server-a -t 85 -l logfile
[...lots of output...]
elaine12:~/tmp/sr_stub> ~/cs244a/bin/tcpdump -r logfile
12:49:42.674341 arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
12:49:44.872588 arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
12:49:45.865546 arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
12:49:46.926132 arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
12:49:47.565089 arp who-has wwtgao-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
12:49:48.555693 arp who-has wwtgao-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
12:49:49.470356 arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
12:49:49.567831 arp who-has wwtgao-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU

Lots of ssho-router arp-requests but also requests for your router. 

Please check again.

  Guido

> the command I used to run VN client is --
> "./sr -s vr-server-a -t 85 -l logfile"

> and the result of the traceroute is --
> "> traceroute 192.168.128.90
> traceroute to wwtgao-router-1.Stanford.EDU (192.168.128.90): 1-30 hops, 38
> byte packets
>  1  leland-gateway.Stanford.EDU (171.64.15.65)  1.58 ms  1.45 ms  1.88 ms
>  2  smra-rtr.Stanford.EDU (171.64.1.236)  3.11 ms (ttl=63!)  3.30 ms
> (ttl=63!)  2.89 ms (ttl=63!)
>  3  Gates-rtr.Stanford.EDU (171.64.1.44)  1.94 ms  3.84 ms  1.56 ms
>  4  vr-firewall.Stanford.EDU (171.64.74.9)  1.29 ms  1.01 ms  1.23 ms
>  5  vr-firewall.Stanford.EDU (171.64.74.9)  2993 ms (ttl=252!) !H  3000 ms
> (ttl=252!) !H  3001 ms (ttl=252!) !H"

> any clue? thanks!
> Tan

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: trouble ping/traceroute
Date: Tue, 25 Feb 2003 12:55:34 -0800
Lines: 53
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046206536 19319 171.64.15.80 (25 Feb 2003 20:55:36 GMT)
X-Complaints-To: 
To: "Tan Gao (weiwei)" 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4642


 In agreement with Guido ...

this is using
../sr -s vr-server-a -t 85

elaine15:~> ping 192.168.128.90
PING wwtgao-router-1.Stanford.EDU (192.168.128.90): 56 data bytes
64 bytes from wwtgao-router-1.Stanford.EDU (192.168.128.90): seq=0 ttl=251 time=123 ms.
^C
---- wwtgao-router-1.Stanford.EDU (192.168.128.90) PING Statistics ----
1 packet transmitted, 1 packet received, 0% packet loss
round-trip (ms) min/avg/max = 123/123/123 (std = 0.000)
elaine15:~>

seems to work fine..

/mc


> for some reason, the only packets receive seem to be all from the same
> source and my client  does not receive any packet that's destined for it
> (or the firewall does not forward any packet to my client?).
>
> tcpdump of the only type of packet i receive:
> 12:24:11.791426 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
> ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0260 0000 0000 0000 0000 0000
>                          0000 0000 0000
>
> the command I used to run VN client is --
> "./sr -s vr-server-a -t 85 -l logfile"
>
> and the result of the traceroute is --
> "> traceroute 192.168.128.90
> traceroute to wwtgao-router-1.Stanford.EDU (192.168.128.90): 1-30 hops, 38
> byte packets
>  1  leland-gateway.Stanford.EDU (171.64.15.65)  1.58 ms  1.45 ms  1.88 ms
>  2  smra-rtr.Stanford.EDU (171.64.1.236)  3.11 ms (ttl=63!)  3.30 ms
> (ttl=63!)  2.89 ms (ttl=63!)
>  3  Gates-rtr.Stanford.EDU (171.64.1.44)  1.94 ms  3.84 ms  1.56 ms
>  4  vr-firewall.Stanford.EDU (171.64.74.9)  1.29 ms  1.01 ms  1.23 ms
>  5  vr-firewall.Stanford.EDU (171.64.74.9)  2993 ms (ttl=252!) !H  3000 ms
> (ttl=252!) !H  3001 ms (ttl=252!) !H"
>
> any clue? thanks!
> Tan
>
>

.

Path: shelby.stanford.edu!elaine38.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: trouble ping/traceroute
Date: Tue, 25 Feb 2003 20:57:38 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 42
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine38.stanford.edu
X-Trace: news.Stanford.EDU 1046206658 19458 171.64.15.113 (25 Feb 2003 20:57:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4643


It looks like sender ac18 4a11 (172.24.74.17) is ARPing for the
MAC address of c0a8 8051 (192.168.128.81).  In other words, the
sender wants to communicate with the receiver (192.168.128.81),
but cannot until it learns the hardware address of the receiver
through an ARP reply.

SteveJ 

>for some reason, the only packets receive seem to be all from the same
>source and my client  does not receive any packet that's destined for it
>(or the firewall does not forward any packet to my client?).
>
>tcpdump of the only type of packet i receive:
>12:24:11.791426 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
>ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                         0001 0800 0604 0001 00e0 8103 fd9e ac18
>                         4a11 0000 0000 0000 c0a8 8051 0000 0000
>                         0000 0000 0000 0000 0000 0000 0000 0000
>                         0000 0000 0260 0000 0000 0000 0000 0000
>                         0000 0000 0000
>
>the command I used to run VN client is --
>"./sr -s vr-server-a -t 85 -l logfile"
>
>and the result of the traceroute is --
>"> traceroute 192.168.128.90
>traceroute to wwtgao-router-1.Stanford.EDU (192.168.128.90): 1-30 hops, 38
>byte packets
> 1  leland-gateway.Stanford.EDU (171.64.15.65)  1.58 ms  1.45 ms  1.88 ms
> 2  smra-rtr.Stanford.EDU (171.64.1.236)  3.11 ms (ttl=63!)  3.30 ms
>(ttl=63!)  2.89 ms (ttl=63!)
> 3  Gates-rtr.Stanford.EDU (171.64.1.44)  1.94 ms  3.84 ms  1.56 ms
> 4  vr-firewall.Stanford.EDU (171.64.74.9)  1.29 ms  1.01 ms  1.23 ms
> 5  vr-firewall.Stanford.EDU (171.64.74.9)  2993 ms (ttl=252!) !H  3000 ms
>(ttl=252!) !H  3001 ms (ttl=252!) !H"
>
>any clue? thanks!
>Tan
>


.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: big-endian?
Date: Tue, 25 Feb 2003 21:02:08 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 41
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine18.stanford.edu
X-Trace: news.Stanford.EDU 1046206928 19800 171.64.15.83 (25 Feb 2003 21:02:08 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4644



I'm trying to reason out the big/little-endian 
question before coding a bunch incorrectly.  Our 
router is a network device, so everything we get 
is in network-byte order, and everything we send 
out must be in network-byte order as well.  
Presumably, our code should work correctly 
whether we run it on a big or little-endian host?  
Or, are real hardware routers always big-endian?  
If true, and since our elaines (Suns) are big-
endian as well, could we simply write code as 
though it will always run on a big-endian 
machine; that is, same as network-byte-order?  
Even IP packets would arrive already in big-
endian (i.e., network) order.  I suspect it's 
more likely that routers come in both flavors.

If we do need to convert byte-order, there could 
be [at least] two possible conventions:
1) Convert by 32-bit words, ignoring the fact 
that some fields cross word boundaries (e.g., the 
Ethernet header, where the Ethernet addresses are 
48 bits long), also ignoring the fact that entire 
fields will get swapped in the process; again, 
would be okay it that's the convention?
2) Convert by header field, skipping 1-byte 
fields, but using short and long for 16 and 32-
bit fields respectively.  This looks like it 
would work nicely for anything up to 32-bits, but 
does not solve the Ethernet header case?  In ARP 
packets, Ethernet addresses are broken already, 
so just convert long on one part, convert short 
on the other?

Finally, what is going on with byte order of the 
version and header_length fields of the IP-header 
struct in sr_protocol.h.  Flipping the first and 
last 4 bits of a single byte is not my 
understanding of endian conversion?

.

Path: shelby.stanford.edu!elaine38.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: traceroute
Date: Tue, 25 Feb 2003 21:18:39 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 27
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine38.stanford.edu
X-Trace: news.Stanford.EDU 1046207919 20722 171.64.15.113 (25 Feb 2003 21:18:39 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4645

I wanted to clarify my earlier comments regarding TTLs and
packets to be forwarded by your router.  If a packet to be
forwarded is received with a TTL of 0 or 1, it should be
dropped (not forwarded).

If a packet to be forwarded is received with TTL 0, it has
"timed out" in the network and should be discarded.  If the
packet is received with TTL of 1, the TTL would be decremented
to 0 by the router, would be considered timed out, and should
likewise be discarded by the router.

Note that the rules for packets sent to the router are
different.  In that case, the router behaves like an end
station and does not discard the packet due to the value
of the TTL.

There is now an entry in the assignment FAQ regarding TTLs
in forwarded packets.

SteveJ

>
>The important idea from the router perspective is to send an
>ICMP "time exceeded" message if the TTL in the IP header is 0.
>(Possibly if the router decrements the TTL to 0 as well, since
>routers are not supposed to forward packets with TTL of 0 or 1).
>
.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: zero padding?
Date: Tue, 25 Feb 2003 17:05:31 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046221534 1931 171.64.15.69 (26 Feb 2003 01:05:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4647

just curious how zero padding should be done for our ethernet trailer

according to the textbook, MAC frame contains minimum of 46 bytes of data.
using ethereal, I noticed that the ARP packet itself is 28 bytes (ARP
request). so it seems that we still need to pad (46-28) = 16 zeros, after
the ARP packet.

however, ethereal shows 42 zeros being padded after ARP packet, making the
total size of the MAC frame 84 bytes (14B MAC header, 28B ARP packet and
42B zeros)

any clue why/how this is? does stanford ethernet follow the IEEE 802.3
standard? how can we figure out how many zeros to pad in our ARP reply
(without hard code 42B of zeros)?

thanks!
Tan

.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Q6c on midterm
Date: Tue, 25 Feb 2003 17:55:03 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1046224515 4055 128.12.181.52 (26 Feb 2003 01:55:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4648

Could somebody explain the solution to this question to me?  Specifically,
why does the transmitter send 1 + W/2 windows of packets in each period of
the sawtooth?

Thanks,

Metha


.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: zero padding?
Date: Wed, 26 Feb 2003 02:00:43 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 26
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1046224843 4300 171.64.15.81 (26 Feb 2003 02:00:43 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4649

>just curious how zero padding should be done for our ethernet trailer
>
>according to the textbook, MAC frame contains minimum of 46 bytes of data.
>using ethereal, I noticed that the ARP packet itself is 28 bytes (ARP
>request). so it seems that we still need to pad (46-28) = 16 zeros, after
>the ARP packet.

18 bytes of padding, which should all be 0.

>
>however, ethereal shows 42 zeros being padded after ARP packet, making the
>total size of the MAC frame 84 bytes (14B MAC header, 28B ARP packet and
>42B zeros)

I think the ethereal output is misleading.

>
>any clue why/how this is? does stanford ethernet follow the IEEE 802.3
>standard? how can we figure out how many zeros to pad in our ARP reply
>(without hard code 42B of zeros)?

sr_send_packet() (or the underlying OS) pads the data you send
automatically, so you don't have to worry about this.

SteveJ

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: what to do w/ wrong-cksum ICMP pkts received?
Date: Tue, 25 Feb 2003 18:29:58 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046226599 5282 171.64.15.69 (26 Feb 2003 02:29:59 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4650

having problem with ping again. all the ICMP echo requests are truncated
somehow by the time i receive it. a typical output looks like --

18:23:53.631240 0:e0:81:3:fd:9e 70:0:0:55:0:1 ip 96: truncated-ip - 2
bytes missing!elaine4.Stanford.EDU > wwtgao-router-1.Stanford.EDU: icmp:
echo request (DF) (ttl 251, id 58769, len 84)

any clues? also for reference, if we receive a packet (IP/ICMP) with bad
checksum, should we just drop the packet?

thanks!
Tan


.

Path: shelby.stanford.edu!elaine9.Stanford.EDU!aseems
From: Aseem Sharma 
Newsgroups: su.class.cs244a
Subject: Re: ARP retries
Date: Tue, 25 Feb 2003 19:34:47 -0800
Lines: 3
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine9.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046230492 8330 171.64.15.74 (26 Feb 2003 03:34:52 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4651

Never mind. I wasn't sending setting the ether_type to ARP on my response.


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: big-endian?
Date: Tue, 25 Feb 2003 20:21:00 -0800
Lines: 55
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046233262 10233 171.64.15.80 (26 Feb 2003 04:21:02 GMT)
X-Complaints-To: 
To: Keith A Primdahl 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4652

>
>
> I'm trying to reason out the big/little-endian
> question before coding a bunch incorrectly.  Our
> router is a network device, so everything we get
> is in network-byte order, and everything we send
> out must be in network-byte order as well.
> Presumably, our code should work correctly
> whether we run it on a big or little-endian host?

 yes.

> Or, are real hardware routers always big-endian?
> If true, and since our elaines (Suns) are big-
> endian as well, could we simply write code as
> though it will always run on a big-endian
> machine; that is, same as network-byte-order?
> Even IP packets would arrive already in big-
> endian (i.e., network) order.  I suspect it's
> more likely that routers come in both flavors.
>

your router should be able to run on a little endian system.

> If we do need to convert byte-order, there could
> be [at least] two possible conventions:
> 1) Convert by 32-bit words, ignoring the fact
> that some fields cross word boundaries (e.g., the
> Ethernet header, where the Ethernet addresses are
> 48 bits long), also ignoring the fact that entire
> fields will get swapped in the process; again,
> would be okay it that's the convention?
> 2) Convert by header field, skipping 1-byte
> fields, but using short and long for 16 and 32-
> bit fields respectively.  This looks like it
> would work nicely for anything up to 32-bits, but
> does not solve the Ethernet header case?  In ARP
> packets, Ethernet addresses are broken already,
> so just convert long on one part, convert short
> on the other?

 Only convert 16 and 32 bit fields.

>
> Finally, what is going on with byte order of the
> version and header_length fields of the IP-header
> struct in sr_protocol.h.  Flipping the first and
> last 4 bits of a single byte is not my
> understanding of endian conversion?

  Good question :-/ I'd never thought about it. Thats how the system header
  does it.  Anyone have an indea on this?

  /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: zero padding?
Date: Tue, 25 Feb 2003 20:22:02 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046233325 10263 171.64.15.80 (26 Feb 2003 04:22:05 GMT)
X-Complaints-To: 
To: "Tan Gao (weiwei)" 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4653


> just curious how zero padding should be done for our ethernet trailer
>
> according to the textbook, MAC frame contains minimum of 46 bytes of data.
> using ethereal, I noticed that the ARP packet itself is 28 bytes (ARP
> request). so it seems that we still need to pad (46-28) = 16 zeros, after
> the ARP packet.
>
> however, ethereal shows 42 zeros being padded after ARP packet, making the
> total size of the MAC frame 84 bytes (14B MAC header, 28B ARP packet and
> 42B zeros)
>
> any clue why/how this is? does stanford ethernet follow the IEEE 802.3
> standard? how can we figure out how many zeros to pad in our ARP reply
> (without hard code 42B of zeros)?

  you don't have to worry about padding, writing a 42 byte arp packet is fine,
  the OS will add the padding.

  /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: what to do w/ wrong-cksum ICMP pkts received?
Date: Tue, 25 Feb 2003 20:23:43 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046233426 10336 171.64.15.80 (26 Feb 2003 04:23:46 GMT)
X-Complaints-To: 
To: "Tan Gao (weiwei)" 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4654


> having problem with ping again. all the ICMP echo requests are truncated
> somehow by the time i receive it. a typical output looks like --
>
> 18:23:53.631240 0:e0:81:3:fd:9e 70:0:0:55:0:1 ip 96: truncated-ip - 2
> bytes missing!elaine4.Stanford.EDU > wwtgao-router-1.Stanford.EDU: icmp:
> echo request (DF) (ttl 251, id 58769, len 84)
>
> any clues? also for reference, if we receive a packet (IP/ICMP) with bad
> checksum, should we just drop the packet?

  This has already been covered in the newgroup.  The truncation is due to the
  snaplen in the logging code.  You can increase it if you'd like,
  (PACKET_DUMP_SIZE in sr_router.h) but there is no reason to.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Man Yu Lui" 
Newsgroups: su.class.cs244a
Subject: Re: Problem Set #3 questions
Date: Tue, 25 Feb 2003 21:22:41 -0800
Lines: 15
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: cromem-02-xee12.stanford.edu
X-Trace: news.Stanford.EDU 1046236911 12295 128.12.195.69 (26 Feb 2003 05:21:51 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4655

>
> > * in our new CSMA/CD scheme, should we try to maximize the usage of the
> > link? OR, detecting/avoiding collision is the only thing under
> > consideration here? for example, we may define "TRANSP > 2*PROP_min",
send
> > a packet, wait 2*PROP, then send another packet. this mechanism wastes a
> > lot of time waiting for collision signal to arrive at transmitter. i
guess
> > this is NOT a valid answer, correct?
>

Could someone give some pointer or hint as to how we may approach question
3b?


.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: IP Header Alignment
Date: Tue, 25 Feb 2003 23:18:20 -0800
Lines: 68
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046243861 16190 128.12.72.54 (26 Feb 2003 07:17:41 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4656

I hit this problem, used a hackish work-around (casting, bit-shifting, 
and bitmasks), then ran into another very related error:

void func(... struct ip* ip_hdr)
{
	int a = ip_hdr->ip_len; /* works fine */
	struct in_addr b = ip_hdr->ip_dst; /* bus err */
	int c = ip_hdr->ip_dst.s_addr; /* bus err */

	memcpy(&b, &ip_hdr->ip_dst, sizeof(b)); /* works fine */
	c=b.s_addr; /* works fine */
}

Same errors, but I'm quite sure ip_dst is 32-bit aligned.  Which means 
compiler glitch instead of alignment problem?

But, as Kai suggested, I added the "packed" attribute to the struct ip 
declaration, and then ALL the above statements worked fine.  In fact, 
the ip_v and ip_hl fields worked also - I've been able to take out the 
work-arounds I mentioned above.  (char d = ip_hdr->ip_hl; runs fine now.)

So perhaps the "packed" attribute was simply left out?  I'm adding it in 
permanently because it makes ALL my code compile easier... should it be 
added back into the base code?  The change doesn't appear to have 
affected any of my other code, although I'm only about a third finished 
writing it now.

-Kevin


Kai-Min Sung wrote:
> Would it help if you added the "packed" attribute to struct ip in
> sr_protocol.h?
> 
> -Kai
> 
> "Mark Rabkin"  wrote in message
> 
> 
>>Thanks, Steve.
>>
>>Turns out alignment is the issue, even if I use the "." operator...
>>
>>This program crashes on the elaine machines:
>>
>>---------------------------------------
>>  struct test
>>  {
>>    unsigned int t_hl : 4;
>>    unsigned int t_v  : 4;
>>  };
>>
>>  int main()
>>  {
>>    unsigned char cBuf[255];
>>    struct test* tp;
>>
>>    tp = (struct test*) cBuf;
>>    tp->t_hl = tp->t_v = 5;         /* works ok */
>>
>>    tp = (struct test*) (cBuf + 2);
>>    tp->t_hl = tp->t_v = 5;         /* SEGFAULT */
>>
>>    return 0;
>>  }
>>---------------------------------------
>>

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: reading IP src addr causing bus error?
Date: Wed, 26 Feb 2003 11:29:57 -0800
Lines: 22
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046287798 8878 171.64.15.99 (26 Feb 2003 19:29:58 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4657

having trouble figuring out why accessing IP src addr causes crash. the
code looks like:

  Debug("IP ttl = %i\n", ip_hdr->ip_ttl);
  Debug("size of ip_src = %i\n", sizeof(ip_hdr->ip_src));
  assert(ip_hdr->ip_src);

the output:

IP ttl = 250
size of ip_src = 4
Bus error

the only reason that i can think of which caused "assert()" to die is
mis-alignment of the 4-byte block that src addr uses. the code crashes,
in the same way, when i try to access IP dst addr.

not sure what stupid mistakes i made this time. any clues?

thanks!
Tan

.

Path: shelby.stanford.edu!elaine38.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: ARP Cache Timeouts
Date: Wed, 26 Feb 2003 12:16:06 -0800
Lines: 38
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine38.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046290567 10845 171.64.15.113 (26 Feb 2003 20:16:07 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4658


Hi,

I have one more question regarding ARP requests. Lets say we get 10
packets for the same IP address, we end up sending 10 ARP request, one for
each packet. On receiving the first ARP reply we add it to our cache. Now,
should we only update this cache entry on timeout or can we update it for
the 9 ARP replies that will follow...

Thanks,
Priyanka

 On Mon, 24 Feb 2003, Martin Casado
wrote:

>
> > Quick question this time :)
> >
> > If we already have an entry for host X in our ARP Cache, and we then
> > receive a broadcast ARP Request from host X that is NOT intended for
> > us, do we:
> >
> > - Update the timestamp on our ARP Cache entry, since this packet
> >   still verifies both the IP and Hardware addresses of Host X.
> >
> > or
> >
> > - Ignore the packet completely, since the TIP field is not us?
>
>  Aother good question, I think the latter is more appropriate since the
>  topologies are supposed to be isolated. Though only indirectly relevant, keep
>  in mind that acceptance of gratuitous arps is a security risk and often used
>  for redirection attacks on LANs.
>
>  /mc
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: reading IP src addr causing bus error?
Date: Wed, 26 Feb 2003 12:58:11 -0800
Lines: 44
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046293052 12911 128.12.72.54 (26 Feb 2003 20:57:32 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4659

Actually, see the thread "IP Header Frame Alignment"... I've posted some 
demo lines there with exactly the same problem as you're describing.

The solution (suggested by Kai-Min) was to add the "packed" line that 
appears in all the other structure declarations to the struct ip 
declaration:
struct ip {
....
} __attribute__ ((packed)) ;

that's underscore x 2, "attribute", underscore x 2, space, "((packed))"

This isn't an official TA-sancitioned solution (maybe some TA could give 
a go / no-go for it?), but it hasn't _broken_ any of my code - and 
completely resolved the problem you describe, as well as allowing me to 
do ip_hdr->ip_v and ip_hdr->ip_hl without getting bus errors.

Hope this helps,
-Kevin

Tan Gao (weiwei) wrote:
> having trouble figuring out why accessing IP src addr causes crash. the
> code looks like:
> 
>   Debug("IP ttl = %i\n", ip_hdr->ip_ttl);
>   Debug("size of ip_src = %i\n", sizeof(ip_hdr->ip_src));
>   assert(ip_hdr->ip_src);
> 
> the output:
> 
> IP ttl = 250
> size of ip_src = 4
> Bus error
> 
> the only reason that i can think of which caused "assert()" to die is
> mis-alignment of the 4-byte block that src addr uses. the code crashes,
> in the same way, when i try to access IP dst addr.
> 
> not sure what stupid mistakes i made this time. any clues?
> 
> thanks!
> Tan
> 

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: reading IP src addr causing bus error?
Date: Wed, 26 Feb 2003 14:09:29 -0800
Lines: 36
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046297371 16571 171.64.15.80 (26 Feb 2003 22:09:31 GMT)
X-Complaints-To: 
To: "Tan Gao (weiwei)" 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4660

On Wed, 26 Feb 2003, Tan Gao (weiwei) wrote:

> having trouble figuring out why accessing IP src addr causes crash. the
> code looks like:
>
>   Debug("IP ttl = %i\n", ip_hdr->ip_ttl);
>   Debug("size of ip_src = %i\n", sizeof(ip_hdr->ip_src));
>   assert(ip_hdr->ip_src);
>
> the output:
>
> IP ttl = 250
> size of ip_src = 4
> Bus error
>
> the only reason that i can think of which caused "assert()" to die is
> mis-alignment of the 4-byte block that src addr uses. the code crashes,
> in the same way, when i try to access IP dst addr.

 A number of students have had problems with by acessing fields that don't lie
 on byte bounderies.  I haven't had this problem .. however .. a sure fire
 method to get around this is to declare a struct iphdr on the stack and memcpy
 the header to it... while ugly .. it will allow you to continue to get work
 done.. and in the end.. if you have spare time to look into fixing that
 problem.

 /mc

>
> not sure what stupid mistakes i made this time. any clues?
>
> thanks!
> Tan
>
>

.

Date: Wed, 26 Feb 2003 14:10:14 -0800
From: Matthew Jonathan Holliman 
Message-ID: 
To: 
Subject: CS244a: midterm misc.
Cc: 
Lines: 14
Newsgroups: su.class.cs244a
Organization: Stanford University Posting Gateway (mailtonews 1.3/0.42)
Path: shelby.stanford.edu!mail-to-news!elaine18.stanford.edu
Sender: 
X-Mail-Path: 
X-Original-Date: Wed, 26 Feb 2003 14:10:12 -0800 (PST)
Xref: shelby.stanford.edu su.class.cs244a:4661


A couple of quick things:

(1) If you have a regrade request, please contact us by the end of this week.
    We won't accept additional requests after this time.

(2) There were some questions about the grading notation for the MCQ section.
    In general, we start by assuming that you get full points for a question
    and denote a point missed by -1.  So you'll see a -1 for any unanswered
    correct choice (since you missed a possible point), and a -1 for
    any answered incorrect choice (in this case, it's a point deducted
    per the exam directions to penalize guessing).  (This just makes
    summing the final scores a little easier).
.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP Cache Timeouts
Date: Wed, 26 Feb 2003 14:14:39 -0800
Lines: 52
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046297681 16840 171.64.15.80 (26 Feb 2003 22:14:41 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4662


 Good question,

  Either of those are valid methods for handling ARP replies.  Just be sure to
  defend your method for handling the ARP reply in the assignment write-up.
  From a security standpoint, unless you keep state for each request sent,
  accepting gratuitous arps can get you in trouble.

  /mc



>
> Hi,
>
> I have one more question regarding ARP requests. Lets say we get 10
> packets for the same IP address, we end up sending 10 ARP request, one for
> each packet. On receiving the first ARP reply we add it to our cache. Now,
> should we only update this cache entry on timeout or can we update it for
> the 9 ARP replies that will follow...
>
> Thanks,
> Priyanka
>
>  On Mon, 24 Feb 2003, Martin Casado
> wrote:
>
> >
> > > Quick question this time :)
> > >
> > > If we already have an entry for host X in our ARP Cache, and we then
> > > receive a broadcast ARP Request from host X that is NOT intended for
> > > us, do we:
> > >
> > > - Update the timestamp on our ARP Cache entry, since this packet
> > >   still verifies both the IP and Hardware addresses of Host X.
> > >
> > > or
> > >
> > > - Ignore the packet completely, since the TIP field is not us?
> >
> >  Aother good question, I think the latter is more appropriate since the
> >  topologies are supposed to be isolated. Though only indirectly relevant, keep
> >  in mind that acceptance of gratuitous arps is a security risk and often used
> >  for redirection attacks on LANs.
> >
> >  /mc
> >
> >
>
>

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: reading IP src addr causing bus error?
Date: Wed, 26 Feb 2003 14:18:28 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046297910 16957 171.64.15.80 (26 Feb 2003 22:18:30 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4663


> Actually, see the thread "IP Header Frame Alignment"... I've posted some
> demo lines there with exactly the same problem as you're describing.
>
> The solution (suggested by Kai-Min) was to add the "packed" line that
> appears in all the other structure declarations to the struct ip
> declaration:
> struct ip {
> ...
> } __attribute__ ((packed)) ;
>
> that's underscore x 2, "attribute", underscore x 2, space, "((packed))"
>
> This isn't an official TA-sancitioned solution (maybe some TA could give
> a go / no-go for it?), but it hasn't _broken_ any of my code - and
> completely resolved the problem you describe, as well as allowing me to
> do ip_hdr->ip_v and ip_hdr->ip_hl without getting bus errors.

  This should actually be added to the sr_protocol.h file... and is the
  appropriate method of going about the problem. Thanks Kevin.

  /mc

.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Q6c on midterm
Date: Wed, 26 Feb 2003 22:19:40 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine18.stanford.edu
X-Trace: news.Stanford.EDU 1046297980 16997 171.64.15.83 (26 Feb 2003 22:19:40 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4664


>Could somebody explain the solution to this question to me?  Specifically,
>why does the transmitter send 1 + W/2 windows of packets in each period of
>the sawtooth?

At the start of the period, the window size is W/2 packets.  This increases
by one packet after each RTT, until it reaches size W packets, at which
point a packet is lost.  Assuming W is even for simplicity, there are thus
W/2 + 1 transmissions in this period (of size W/2+0, W/2+1, ..., W/2+W/2,
respectively).
.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set #3 questions
Date: Wed, 26 Feb 2003 22:31:49 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine18.stanford.edu
X-Trace: news.Stanford.EDU 1046298709 17535 171.64.15.83 (26 Feb 2003 22:31:49 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4665


>Could someone give some pointer or hint as to how we may approach question
>3b?

Unfortunately for you, at least two of the TAs encountered this question for
the first time on a previous CS244a final, so we have little sympathy for
anyone having the luxury of seeing it only on a problem set :-)

A hint:  Think about why there's a constraint on TRANSP in CSMA/CD.
When can you unambiguously decide that a packet collided and identify
the correct one to retransmit?
.

Path: shelby.stanford.edu!elaine18.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: midterm 2001 5b
Date: Wed, 26 Feb 2003 22:39:32 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine18.stanford.edu
X-Trace: news.Stanford.EDU 1046299172 17736 171.64.15.83 (26 Feb 2003 22:39:32 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4666


>the solution gives how much the buffer may increase in the period when the
>router can start servicing.
>However, before that time, it must store N bits (the first packet), so
>doesn't the buffer need to store
>[how much it can gain = answer in solution] + N?

I must have missed this question before (sorry)--
The solution takes care of the store-and-forward nature of the router by the
N/2R time offset mentioned in the solution.  (After this time, we assume that
packets depart on a bit-by-bit basis--probably not an entirely realistic
model of buffering, but a simple one with which to work).
.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: out of memory issue
Date: Wed, 26 Feb 2003 14:54:01 -0800
Lines: 13
Distribution: su
Message-ID: 
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046300036 18290 127.0.0.1 (26 Feb 2003 22:53:56 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4667

During a transfer of the file medium I get the following message 
(followed by an exit):

Error: could not read full command length from server
sr_destroy_INSTANCE leaking memory, WHEEE!!!

I have checked my implementation with purify and do not show any memory 
leaks.  Has anyone else experienced this issue?  Could this be caused by 
too many users running there implementations at the same time?

Thanks,
Tyson

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: out of memory issue
Date: Wed, 26 Feb 2003 17:16:46 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046308608 24297 171.64.15.80 (27 Feb 2003 01:16:48 GMT)
X-Complaints-To: 
To: Tyson Condie 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4668



 Check out FAQ #21

 There is an update to the stub code .. replace sr_vns_comm.c

 /mc


> During a transfer of the file medium I get the following message
> (followed by an exit):
>
> Error: could not read full command length from server
> sr_destroy_INSTANCE leaking memory, WHEEE!!!
>
> I have checked my implementation with purify and do not show any memory
> leaks.  Has anyone else experienced this issue?  Could this be caused by
> too many users running there implementations at the same time?
>
> Thanks,
> Tyson
>
>

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Obtaining ethernet addresses
Date: Thu, 27 Feb 2003 02:19:37 +0000 (UTC)
Organization: Stanford University
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1046312377 26936 171.64.15.84 (27 Feb 2003 02:19:37 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4669


Is it ok to hardcode the ethernet address of my router interfaces?

If not how can I obtain them in software?

.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: Re: out of memory issue
Date: Wed, 26 Feb 2003 18:46:05 -0800
Lines: 37
Distribution: su
Message-ID: 
References:  
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046313958 28317 127.0.0.1 (27 Feb 2003 02:45:58 GMT)
X-Complaints-To: 
To: Martin Casado 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4670

Martin Casado wrote:
> 
>  Check out FAQ #21
> 
>  There is an update to the stub code .. replace sr_vns_comm.c
> 
>  /mc
> 
> 
> 
>>During a transfer of the file medium I get the following message
>>(followed by an exit):
>>
>>Error: could not read full command length from server
>>sr_destroy_INSTANCE leaking memory, WHEEE!!!
>>
>>I have checked my implementation with purify and do not show any memory
>>leaks.  Has anyone else experienced this issue?  Could this be caused by
>>too many users running there implementations at the same time?
>>
>>Thanks,
>>Tyson
>>
>>
> 
> 

Ok now I get the following message after replacing sr_vns_comm.c:

Error: command length to large 5505108
sr_destroy_INSTANCE leaking memory, WHEEE!!!

Any ideas?

Thanks,
Tyson

.

Path: shelby.stanford.edu!not-for-mail
From: Tyson Condie 
Newsgroups: su.class.cs244a
Subject: Re: out of memory issue
Date: Wed, 26 Feb 2003 18:46:25 -0800
Lines: 37
Distribution: su
Message-ID: 
References:  
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046313979 28317 127.0.0.1 (27 Feb 2003 02:46:19 GMT)
X-Complaints-To: 
To: Martin Casado 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4671

Martin Casado wrote:
> 
>  Check out FAQ #21
> 
>  There is an update to the stub code .. replace sr_vns_comm.c
> 
>  /mc
> 
> 
> 
>>During a transfer of the file medium I get the following message
>>(followed by an exit):
>>
>>Error: could not read full command length from server
>>sr_destroy_INSTANCE leaking memory, WHEEE!!!
>>
>>I have checked my implementation with purify and do not show any memory
>>leaks.  Has anyone else experienced this issue?  Could this be caused by
>>too many users running there implementations at the same time?
>>
>>Thanks,
>>Tyson
>>
>>
> 
> 

Ok now I get the following message after replacing sr_vns_comm.c:

Error: command length to large 5505108
sr_destroy_INSTANCE leaking memory, WHEEE!!!

Any ideas?

Thanks,
Tyson

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: writing to logfile segfaults
Date: Thu, 27 Feb 2003 07:23:59 +0000 (UTC)
Organization: Stanford University
Lines: 43
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1046330639 8756 171.64.15.81 (27 Feb 2003 07:23:59 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4672


elaine16:~/cs244a/pp3/sr_stub> ./sr -s vr-server-a -t 67 -l logfile
Destination: 0.0.0.0
  Gateway : 172.24.74.17
  Mask : 0.0.0.0
  Interface : eth0
Client seetapun connecting to Server vr-server-a:12345
Requesting topology 67
Sending c_open (type=1 len=108)
Received Hardware Info with 19 entries
Fixed IP: 172.24.74.17
INTERFACE: eth0
Speed: 0
Hardware Address: 70:00:00:43:00:01
Ethernet IP: 192.168.128.72
Subnet: 0.0.0.0
Mask: 0.0.0.0
INTERFACE: eth1
Speed: 0
Hardware Address: 70:00:00:43:00:02
Ethernet IP: 192.168.128.237
Subnet: 0.0.0.0
Mask: 0.0.0.0
INTERFACE: eth2
Speed: 0
Hardware Address: 70:00:00:43:00:06
Ethernet IP: 192.168.129.182
Subnet: 0.0.0.0
Mask: 0.0.0.0
Interface: eth0
  hardware address 70:00:00:43:00:01
  ip address 192.168.128.72
Interface: eth1
  hardware address 70:00:00:43:00:02
  ip address 192.168.128.237
Interface: eth2
  hardware address 70:00:00:43:00:06
  ip address 192.168.129.182
*** -> Received packet of length 60
Segmentation fault   


How do I fix this?
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: ARP replies
Date: Thu, 27 Feb 2003 07:49:05 +0000 (UTC)
Organization: Stanford University
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1046332145 9359 171.64.15.81 (27 Feb 2003 07:49:05 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4673



I am getting ARP requests and when I respond I then get IP packets.
But when I send ARP requests for the IP's of my ftp or www servers
I never get a reply. How can I see if those machines are alive?
.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Obtaining ethernet addresses
Date: Thu, 27 Feb 2003 00:03:01 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046332982 10015 171.64.15.80 (27 Feb 2003 08:03:02 GMT)
X-Complaints-To: 
To: David Seetapun 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4674

On Thu, 27 Feb 2003, David Seetapun wrote:

>
> Is it ok to hardcode the ethernet address of my router interfaces?
>

 no.

> If not how can I obtain them in software?

  The stub code handles setting up the interfaces for you, see vr_if.[h,c]


  /mc

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: out of memory issue
Date: Thu, 27 Feb 2003 00:04:57 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046333099 10053 171.64.15.80 (27 Feb 2003 08:04:59 GMT)
X-Complaints-To: 
To: Tyson Condie 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4675


 My fault ....

 in sr_vns_comm.c change line 198-199 to look like ..

       if((ret = recv(sr->sockfd,((uint8_t*)&len) + bytes_read,
                        4 - bytes_read, 0)) == -1)

 Sorry about that .. I'll update the stub code as well..

  /mc

>
> Ok now I get the following message after replacing sr_vns_comm.c:
>
> Error: command length to large 5505108
> sr_destroy_INSTANCE leaking memory, WHEEE!!!
>
> Any ideas?
>
> Thanks,
> Tyson
>
>

.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP replies
Date: Thu, 27 Feb 2003 00:07:07 -0800
Lines: 9
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046333228 10121 171.64.15.80 (27 Feb 2003 08:07:08 GMT)
X-Complaints-To: 
To: David Seetapun 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4676

>
> I am getting ARP requests and when I respond I then get IP packets.
> But when I send ARP requests for the IP's of my ftp or www servers
> I never get a reply. How can I see if those machines are alive?

 The machines are alive.  You can check by pinging www-vr-b-2 and www-vr-b-3.

 /mc

.

Path: shelby.stanford.edu!saga15.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: converting network addr?
Date: Thu, 27 Feb 2003 22:54:25 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga15.stanford.edu
X-Trace: news.Stanford.EDU 1046386465 8549 171.64.15.145 (27 Feb 2003 22:54:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4677


How can I convert the uint32_t tip (target ip addr)
in the ARP request to check if it is there in my routing table?

sr_rt stores the IP addr in struct in_addr format?

thanks,
ceekay
.

Path: shelby.stanford.edu!not-for-mail
From: "Keith Simmons" 
Newsgroups: su.class.cs244a
Subject: Slide/PS Discrepancy
Date: Thu, 27 Feb 2003 17:17:59 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: ksimmons.stanford.edu
X-Trace: news.Stanford.EDU 1046395080 14747 128.12.105.123 (28 Feb 2003 01:18:00 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4678

There is a slight discrepancy between slide 5 of handout 8 and PS question
#1.  In the slide it specifies:
     AvgLength[n + 1] = (1 - weight) * AvgLen(n) + weight * SampleWeight[n]

In the homework assignment it says:
    AvgLen[n] = (1-alpha) * AvgLen[n-1] + alpha * Length[n]

If the homework equation was a direct translation of the slides, it should
read:
    AvgLen[n] = (1-alpha) * AvgLen[n-1] + alpha * Length[n - 1]

In other words, should the average length at n use the sample weight from
n-1 or from n.  It seems like n would be the logical choice, but this will
effect all my equations, so I want to make sure.  Thanks.

Keith


.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Guido Office hours
Date: Fri, 28 Feb 2003 02:18:58 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine13.stanford.edu
X-Trace: news.Stanford.EDU 1046398738 17258 171.64.15.78 (28 Feb 2003 02:18:58 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4679


Have they been cancelled?
.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Re: converting network addr?
Date: Thu, 27 Feb 2003 18:38:25 -0800
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046399866 17903 128.12.72.54 (28 Feb 2003 02:37:46 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4680


Chandrakala Kappanna wrote:
> How can I convert the uint32_t tip (target ip addr)
> in the ARP request to check if it is there in my routing table?
> 
> sr_rt stores the IP addr in struct in_addr format?

struct in_addr is (roughly, I'm leaving out a few details) defined as:

struct in_addr {
	uint32_t s_addr;
};

So the s_addr member of the in_addr structure is the type you want. 
(Stevens lists the definition of in_addr on pgs 58-59.)

> 
> thanks,
> ceekay

.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: review session on 2/28?
Date: Fri, 28 Feb 2003 11:26:20 -0800
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine39.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046460381 20969 171.64.15.114 (28 Feb 2003 19:26:21 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4681

is there a review session today? anyone know what topics will be covered?
thanks! tan

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: review session on 2/28?
Date: Fri, 28 Feb 2003 11:49:00 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1046461818 21903 128.12.186.92 (28 Feb 2003 19:50:18 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4682

Yes, I am giving the review session today.  The topics covered will be
NAT/Firewall/ARP/Mobile IP.

--Russ

"Tan Gao (weiwei)"  wrote in message

> is there a review session today? anyone know what topics will be covered?
> thanks! tan
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Kai-Min Sung" 
Newsgroups: su.class.cs244a
Subject: UMR in sr_connect_to_server()
Date: Fri, 28 Feb 2003 17:35:12 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: sw-90-709-288-2.stanford.edu
X-Trace: news.Stanford.EDU 1046482512 5657 171.66.154.73 (1 Mar 2003 01:35:12 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4683

Just for the TA's info, my purify output was reporting a UMR (uninitialized
memory read) in the routine sr_connect_to_server(). Seems like not all of
the data members for the variable 'command' were being initialized. So I
added the following line to the beginning of the routine and the UMR went
away:

    memset(&command,0,sizeof(c_open));

Regards,
-Kai


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: UMR in sr_connect_to_server()
Date: Fri, 28 Feb 2003 18:37:43 -0800
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046486264 7514 171.64.15.80 (1 Mar 2003 02:37:44 GMT)
X-Complaints-To: 
To: Kai-Min Sung 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4684


 I appreciate the report .. I've added the memset to the base code so
 purify stops complaining even though the unitialized fields are unused
 currently in the protocol.

 Cheers,
 /mc

> Just for the TA's info, my purify output was reporting a UMR (uninitialized
> memory read) in the routine sr_connect_to_server(). Seems like not all of
> the data members for the variable 'command' were being initialized. So I
> added the following line to the beginning of the routine and the UMR went
> away:
>
>     memset(&command,0,sizeof(c_open));
>
> Regards,
> -Kai
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Fritz Budiyanto 
Newsgroups: su.class.cs244a
Subject: host unreachable
Date: Sat, 1 Mar 2003 08:08:40 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine9.stanford.edu
X-Trace: news.Stanford.EDU 1046506120 19004 171.64.15.74 (1 Mar 2003 08:08:40 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4685

Hi,

What happened if we send host unreachable back to sender (because no reply
from ARP), but the next hop router/host does not reply to ARP (ie default
router is down and does not reply to arp) ?

ie.
Say we receive a packet from host A with destination B.
We determine that the next hop to B is 1.1.1.1
We arp 1.1.1.1, but no reply
We send unreachable back to A
We found out A's next hop is 2.2.2.2 
We Send ARP to find 2.2.2.2
No reply

what happened next?

fritz
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: What is supposed to happen?
Date: Sat, 1 Mar 2003 18:33:10 +0000 (UTC)
Organization: Stanford University
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1046543590 9140 171.64.15.68 (1 Mar 2003 18:33:10 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4686


My router generates an ICMP host unreachable after 5 arp tries with no success.
How is ftp supposed to react?


10:23:16.534697 70:0:0:43:0:1 0:e0:81:3:fd:9e ip 70: seetapun-router-2.Stanford.EDU > elaine3.Stanford.EDU
: icmp: host ftp-seetapun.Stanford.EDU unreachable for elaine3.Stanford.EDU.41656 > ftp-seetapun.Stanford.
EDU.ftp: [|tcp] (DF) (ttl 60, id 12334, len 48) [tos 0xc0]  (ttl 64, id 1, len 56)
                         45c0 0038 0001 0000 4001 7dea c0a8 80ed
                         ab40 0f44 0301 9fdb f728 ffbe 4500 0030
                         302e 4000 3c06 11b6 ab40 0f44 c0a8 81b7
                         a2b8 0015 ab97 17d6
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: Min time between ARP tries?
Date: Sat, 1 Mar 2003 19:32:26 +0000 (UTC)
Organization: Stanford University
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine3.stanford.edu
X-Trace: news.Stanford.EDU 1046547146 11046 171.64.15.68 (1 Mar 2003 19:32:26 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4687


Should there be a min time between ARP tries as otherwise 
from a cold start the router will drop packets until the ARP
cache is populated.
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: routing/forwarding final clarification
Date: Sat, 1 Mar 2003 11:40:51 -0800
Lines: 51
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046547652 11508 171.64.15.82 (1 Mar 2003 19:40:52 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4688

still confused about what we should do to set up routing table and make
forwarding decisions:

in thread "router table" by Jonathan D. Herbach --
I get the impression that we need to add two static routes in "rtable" (in
addition to the default route provided in the stub code), one route to
www-userID, the other to ftp-userID. in this case, does our code need to
maintain a dynamic list of entries as the program runs? if yes, would it
be similar to an ARP cache where entry timeout is enforced?

for instance, suppose the routing table looks like:

1.1.1.1 1.1.1.1 255.255.255.255 eth1
2.2.2.2 2.2.2.2 255.255.255.255 eth2
0.0.0.0 3.3.3.3 0.0.0.0         eth0

Scenario #1 -->
when the router receives a pkt on eth0 (src IP 4.4.4.4, destined for
1.1.1.1), do we add an entry of

4.4.4.4 3.3.3.3 0.0.0.0         eth0

in our routing table? so that when 1.1.1.1 sends a reply pkt to 4.4.4.4,
routing table look-up will NOT mistakenly conclude "dest host
unreachable" and drop the reply pkt?

Scenario #2 -->
suppose we use the static routing table with three entries above. if
router receives a pkt on eth0 (src IP 6.6.6.6, destined for 5.5.5.5), do
we drop the pkt immediately and send ICMP back to 6.6.6.6? do we assume
that 5.5.5.5 can NOT possibly be on the networks to which eth1 and eth2
are connected to? (i.e. 1.1.1.1 and 2.2.2.2 are the only valid dest IP for
pkts received on eth0?)


in thread "7 questions on #3" by Keith Primdahl
Martin replied that "The easiest way to handle routing is to simple set up
an entry for each end host.  Don't worry about longest match"

Guido replied that "Yes, the idea is to bild on the existing version.
We will likely test with a different routing table so hard-coding one
won't work. You can expect the routing table to be sorted."

both comments lead me to believe that a dynamic routing table is required
in our code. can someone confirm what exactly are we expected to do with
"rtable", with route look-up, and with routing table
construction/maintaince?

thanks!
Tan

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: host unreachable
Date: Sat, 1 Mar 2003 23:38:55 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046561935 21050 171.64.15.112 (1 Mar 2003 23:38:55 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4689

>
>What happened if we send host unreachable back to sender (because no reply
>from ARP), but the next hop router/host does not reply to ARP (ie default
>router is down and does not reply to arp) ?
>
>ie.
>Say we receive a packet from host A with destination B.
>We determine that the next hop to B is 1.1.1.1
>We arp 1.1.1.1, but no reply

You would have dropped the from A/to B packet by this point.

>We send unreachable back to A
>We found out A's next hop is 2.2.2.2 
>We Send ARP to find 2.2.2.2

You would have to drop the "host unreachable" to A.
I think that would be the end of it.

This raises an interesting issue, which I believe is
beyond the scope of this assignment.  If a hacker was
bombarding the router with packets with bogus source and 
destination addresses, the router would not want to arp
in both directions for each packet, as the overhead could
bring it to its knees.  Don't worry about this, however.

Any comments from other TAs?

SteveJ

>No reply
>
>what happened next?


.

Path: shelby.stanford.edu!not-for-mail
From: Susan Noreen Shepard 
Newsgroups: su.class.cs244a
Subject: Re: router table
Date: Sat, 1 Mar 2003 23:39:21 +0000 (UTC)
Lines: 24
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: firebird15.stanford.edu
X-Trace: news.Stanford.EDU 1046561961 20275 171.64.12.144 (1 Mar 2003 23:39:21 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.9-31 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4690

Guido wrote:
> Why is that? You could use an entry like:

> 192.168.129.64  * 255.255.255.248 eth1

> this would route correctly to a whole subnet.

So, I think I understand how you could use this entry in the rtable to
distinguish networks that are directly connected to the router.  However,
if I include a line like:

192.168.129.64 * 255.255.255.248 eth1

in my rtable, the sr_rt.c code is unable to translate the *.  So my
question is:
-What is the format of a line in the rtable to indicate an entire network
 is attached directly to an interface?  If there isn't a standard format,
 can I modify the sr_rt.c code to support something I choose?  (I would
 assume this is undesirable because you would probably like to use
 the same rtable file to test multiple implementations)

It's probably obvious, but I'm just not seeing the answer, so thanks.

Susan
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: What is supposed to happen?
Date: Sat, 1 Mar 2003 23:45:58 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046562358 21489 171.64.15.112 (1 Mar 2003 23:45:58 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4691

>
>My router generates an ICMP host unreachable after 5 arp tries with no success.

After one arp transmission plus 5 retries.

>How is ftp supposed to react?

I'll assume that ftp is trying to establish a connection to some
server, and the connection to that server cannot be established
because the arp times out.  The ftp session would fail at this
point, aborting with some sort of "cannot connect" message.

SteveJ

>
>10:23:16.534697 70:0:0:43:0:1 0:e0:81:3:fd:9e ip 70: seetapun-router-2.Stanford.EDU > elaine3.Stanford.EDU
>: icmp: host ftp-seetapun.Stanford.EDU unreachable for elaine3.Stanford.EDU.41656 > ftp-seetapun.Stanford.
>EDU.ftp: [|tcp] (DF) (ttl 60, id 12334, len 48) [tos 0xc0]  (ttl 64, id 1, len 56)
>                         45c0 0038 0001 0000 4001 7dea c0a8 80ed
>                         ab40 0f44 0301 9fdb f728 ffbe 4500 0030
>                         302e 4000 3c06 11b6 ab40 0f44 c0a8 81b7
>                         a2b8 0015 ab97 17d6


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Min time between ARP tries?
Date: Sat, 1 Mar 2003 23:49:23 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046562563 22188 171.64.15.112 (1 Mar 2003 23:49:23 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4692

In article 
David Seetapun  wrote:
>
>Should there be a min time between ARP tries as otherwise 
>from a cold start the router will drop packets until the ARP
>cache is populated.

Here is an excerpt from a relevant post by Martin:

    Linux seems to resend ARPS every 200 - 500 milliseconds.  However,
    since you don't have a mechanism for providing strong gaurantees
    on timeouts (unless you implement threads or we provide a callback
    loop) the actual timing is difficult to enforce.  Try not to send
    a resend sooner than 200 milliseconds before the last arp sent
    (on that particular interface) .. but don't worry about sending
    resends when packets are not arriving to the router.

    /mc

SteveJ

.

Path: shelby.stanford.edu!not-for-mail
From: "John C. Wu" 
Newsgroups: su.class.cs244a
Subject: Disappearing packets and VNS problems?
Date: Sat, 1 Mar 2003 16:00:13 -0800
Lines: 37
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab400df6.stanford.edu
X-Trace: news.Stanford.EDU 1046563324 23110 171.64.13.246 (2 Mar 2003 00:02:04 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4693

I've been running into some issues with the VNS client/server. I'm not sure
if these are caused by myself or not.

Firstly, I occasionally get the following error:
--------------------------------------------------------------
elaine26:~/class/cs244a/hw3/sr_stub> ./sr -s server-b -t 28
Destination: 192.168.128.160
  Gateway : 192.168.128.160
  Mask : 255.255.255.255
  Interface : eth1
Destination: 192.168.129.105
  Gateway : 192.168.129.105
  Mask : 255.255.255.255
  Interface : eth2
Destination: 0.0.0.0
  Gateway : 192.168.128.33
  Mask : 0.0.0.0
  Interface : eth0
Client jcwu connecting to Server server-b:12345
Requesting topology 28
gethostbyname:sr_client.c::sr_connect_to_server(..): Error 0
--------------------------------------------------------------
Odd considering I am running the stub code (no modifications except for the
rtable).

Also occasionally, I will run my router and no packets will be coming in,
even when I do pings. I should be getting ARP requests, right? So I went and
tried running the original stub code. Same thing.

After waiting some time, it usually starts working again.

Is anybody running into the same problem? Please post.

Thanks,
John


.

Path: shelby.stanford.edu!not-for-mail
From: Susan Noreen Shepard 
Newsgroups: su.class.cs244a
Subject: Re: router table
Date: Sun, 2 Mar 2003 00:03:16 +0000 (UTC)
Lines: 37
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: firebird15.stanford.edu
X-Trace: news.Stanford.EDU 1046563396 22520 171.64.12.144 (2 Mar 2003 00:03:16 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.9-31 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4694

I just re-read the "Not Required but Smiled Upon" portion of the
assignment web page, so I think I have figured out my own questions:

Namely that right now the supplied rtable code doesn't support a line such
as Guido wrote, so we'd have to implement it ourselves if we desired such
ability.  I am still confused, though, as to whether or not we are
required to support this.  Some of the responses Guido has written suggest
yes, we do need to support this, but the fact that it appears in the
"Not Required" section makes me think it's not required.

Susan

Susan Noreen Shepard  wrote:
> Guido wrote:
>> Why is that? You could use an entry like:

>> 192.168.129.64  * 255.255.255.248 eth1

>> this would route correctly to a whole subnet.

> So, I think I understand how you could use this entry in the rtable to
> distinguish networks that are directly connected to the router.  However,
> if I include a line like:

> 192.168.129.64 * 255.255.255.248 eth1

> in my rtable, the sr_rt.c code is unable to translate the *.  So my
> question is:
> -What is the format of a line in the rtable to indicate an entire network
>  is attached directly to an interface?  If there isn't a standard format,
>  can I modify the sr_rt.c code to support something I choose?  (I would
>  assume this is undesirable because you would probably like to use
>  the same rtable file to test multiple implementations)

> It's probably obvious, but I'm just not seeing the answer, so thanks.

> Susan
.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: Disappearing packets and VNS problems?
Date: Sat, 01 Mar 2003 16:48:34 -0800
Lines: 37
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046566102 24820 128.12.187.58 (2 Mar 2003 00:48:22 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4695

>I've been running into some issues with the VNS client/server. I'm not sure
>if these are caused by myself or not.
>
>Firstly, I occasionally get the following error:
>--------------------------------------------------------------
>elaine26:~/class/cs244a/hw3/sr_stub> ./sr -s server-b -t 28
>Destination: 192.168.128.160
>  Gateway : 192.168.128.160
>  Mask : 255.255.255.255
>  Interface : eth1
>Destination: 192.168.129.105
>  Gateway : 192.168.129.105
>  Mask : 255.255.255.255
>  Interface : eth2
>Destination: 0.0.0.0
>  Gateway : 192.168.128.33
>  Mask : 0.0.0.0
>  Interface : eth0
>Client jcwu connecting to Server server-b:12345
>Requesting topology 28
>gethostbyname:sr_client.c::sr_connect_to_server(..): Error 0
>--------------------------------------------------------------
>Odd considering I am running the stub code (no modifications except for the
>rtable).
>
>Also occasionally, I will run my router and no packets will be coming in,
>even when I do pings. I should be getting ARP requests, right? So I went and
>tried running the original stub code. Same thing.
>
>After waiting some time, it usually starts working again.
>
>Is anybody running into the same problem? Please post.

	I haven't gotten the first problem, but I just ran into the
problem about not receiving any packets even when I directly try to
ping the router from an elaine. 

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: routing/forwarding final clarification
Date: Sun, 2 Mar 2003 00:50:45 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 86
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046566245 25045 171.64.15.112 (2 Mar 2003 00:50:45 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4696

In article 
Tan Gao (weiwei)  wrote:
>still confused about what we should do to set up routing table and make
>forwarding decisions:
>
>in thread "router table" by Jonathan D. Herbach --
>I get the impression that we need to add two static routes in "rtable" (in
>addition to the default route provided in the stub code), one route to
>www-userID, the other to ftp-userID. in this case, does our code need to
>maintain a dynamic list of entries as the program runs? if yes, would it
>be similar to an ARP cache where entry timeout is enforced?

You should not need to worry about timing out routing
table entries.

>
>for instance, suppose the routing table looks like:
>
>1.1.1.1 1.1.1.1 255.255.255.255 eth1
>2.2.2.2 2.2.2.2 255.255.255.255 eth2
>0.0.0.0 3.3.3.3 0.0.0.0         eth0
>
>Scenario #1 -->
>when the router receives a pkt on eth0 (src IP 4.4.4.4, destined for
>1.1.1.1), do we add an entry of
>
>4.4.4.4 3.3.3.3 0.0.0.0         eth0
>
>in our routing table? so that when 1.1.1.1 sends a reply pkt to 4.4.4.4,
>routing table look-up will NOT mistakenly conclude "dest host
>unreachable" and drop the reply pkt?

You would need the correct subnet mask.  0.0.0.0 is not right.

>
>Scenario #2 -->
>suppose we use the static routing table with three entries above. if
>router receives a pkt on eth0 (src IP 6.6.6.6, destined for 5.5.5.5), do
>we drop the pkt immediately and send ICMP back to 6.6.6.6?

One reasonable behavior would be for the router to send the
packet back out eth0, with the destination hardware address
rewritten with the appropriate hardware address for default
gateway 3.3.3.3.  Can another TA confirm this as the expected
behavior?

 do we assume
>that 5.5.5.5 can NOT possibly be on the networks to which eth1 and eth2
>are connected to? (i.e. 1.1.1.1 and 2.2.2.2 are the only valid dest IP for
>pkts received on eth0?)

The routing table does not contain routes to 5.5.5.5 
with destination ports eth1 or eth2.  So, the router
would not forward a packet with dest=5.5.5.5 out either
of these ports.

>
>in thread "7 questions on #3" by Keith Primdahl
>Martin replied that "The easiest way to handle routing is to simple set up
>an entry for each end host.  Don't worry about longest match"
>
>Guido replied that "Yes, the idea is to bild on the existing version.
>We will likely test with a different routing table so hard-coding one
>won't work. You can expect the routing table to be sorted."
>
>both comments lead me to believe that a dynamic routing table is required
>in our code. can someone confirm what exactly are we expected to do with
>"rtable", with route look-up, and with routing table
>construction/maintaince?

I believe that Martin and Guido are saying the same thing.
An exact match entry would be placed in the routing cache
first, since it has a longer subnet prefix.  A linear search
of the routing table would then encounter the more specific
entry, since it is before the less specific entry.

Dynamic means that you can add new entries as needed.

SteveJ

>
>thanks!
>Tan
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: router table
Date: Sun, 2 Mar 2003 01:32:29 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 54
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046568749 26877 171.64.15.112 (2 Mar 2003 01:32:29 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4697

The * is just notational shorthand for the value you really
need to use.

The second entry is the gateway IP address for reaching the
station with the IP address in the first column.  for a
directly connected end station, the gateway is the same
IP address that appears in the first column.

>Guido wrote:
>> Why is that? You could use an entry like:
>
>> 192.168.129.64  * 255.255.255.248 eth1
>
>> this would route correctly to a whole subnet.
>
>So, I think I understand how you could use this entry in the rtable to
>distinguish networks that are directly connected to the router.  However,
>if I include a line like:
>
>192.168.129.64 * 255.255.255.248 eth1
>
>in my rtable, the sr_rt.c code is unable to translate the *.  So my
>question is:
>-What is the format of a line in the rtable to indicate an entire network
> is attached directly to an interface?

Dest IP addr, gateway IP addr, subnet mask, interface

If the subnet mask is 255.255.255.255, then the dest and gateway
IP addresses are both the IP address of the directly connected
end station.

If the subnet mask is 0.0.0.0, then the dest IP address is 0.0.0.0
and the gateway IP address is the IP address of the directly
connected port of the default gateway (router).

If the subnet mask is somewhere in between, then I believe the
dest and gateway IP addresses are both the first possible IP
address on the subnet.  Can one of the other TAs confirm this?

  If there isn't a standard format,
> can I modify the sr_rt.c code to support something I choose?

No, don't modify the arp cache code.  It would make grading
very difficult, which leads to unhappy TAs.

SteveJ

  (I would
> assume this is undesirable because you would probably like to use
> the same rtable file to test multiple implementations)
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: Disappearing packets and VNS problems?
Date: Sun, 2 Mar 2003 01:41:03 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 60
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046569263 27309 171.64.15.112 (2 Mar 2003 01:41:03 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4698

In article 
John C. Wu  wrote:
>I've been running into some issues with the VNS client/server. I'm not sure
>if these are caused by myself or not.
>
>Firstly, I occasionally get the following error:
>--------------------------------------------------------------
>elaine26:~/class/cs244a/hw3/sr_stub> ./sr -s server-b -t 28
>Destination: 192.168.128.160
>  Gateway : 192.168.128.160
>  Mask : 255.255.255.255
>  Interface : eth1
>Destination: 192.168.129.105
>  Gateway : 192.168.129.105
>  Mask : 255.255.255.255
>  Interface : eth2
>Destination: 0.0.0.0
>  Gateway : 192.168.128.33
>  Mask : 0.0.0.0
>  Interface : eth0
>Client jcwu connecting to Server server-b:12345
>Requesting topology 28
>gethostbyname:sr_client.c::sr_connect_to_server(..): Error 0
>--------------------------------------------------------------
>Odd considering I am running the stub code (no modifications except for the
>rtable).

This appears to originate with the following code in sr_vns_comm.c:

    /* grab hosts address from domain name */
    if ((hp = gethostbyname(server))==0)
    {
        perror("gethostbyname:sr_client.c::sr_connect_to_server(..)");
        return -1;
    }

DNS failure?

>
>Also occasionally, I will run my router and no packets will be coming in,
>even when I do pings. I should be getting ARP requests, right? So I went and
>tried running the original stub code. Same thing.
>
>After waiting some time, it usually starts working again.

There have been periodic reports of traffic stoppages.
I'm not sure if anyone has gotten to the bottom of this.
Martin?

SteveJ

>
>Is anybody running into the same problem? Please post.
>
>Thanks,
>John
>
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: router table
Date: Sun, 2 Mar 2003 01:44:41 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 21
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046569481 27386 171.64.15.112 (2 Mar 2003 01:44:41 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4699

Please read my post of a few minutes ago, then re-post
if you still have questions.

We are not expecting you to modify the rtable code.

SteveJ

In article 
Susan Noreen Shepard   wrote:
>I just re-read the "Not Required but Smiled Upon" portion of the
>assignment web page, so I think I have figured out my own questions:
>
>Namely that right now the supplied rtable code doesn't support a line such
>as Guido wrote, so we'd have to implement it ourselves if we desired such
>ability.  I am still confused, though, as to whether or not we are
>required to support this.  Some of the responses Guido has written suggest
>yes, we do need to support this, but the fact that it appears in the
>"Not Required" section makes me think it's not required.
>
>Susan
>
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: router table
Date: Sun, 2 Mar 2003 02:06:14 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 12
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046570774 27990 171.64.15.112 (2 Mar 2003 02:06:14 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4700

I meant to say "don't modify the routing table code."

SteveJ

>
>No, don't modify the arp cache code.  It would make grading
>very difficult, which leads to unhappy TAs.
>
>SteveJ
>


.

Path: shelby.stanford.edu!elaine2.Stanford.EDU!myc
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: lost info. from email
Date: Sat, 1 Mar 2003 19:09:32 -0800
Lines: 21
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine2.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046574574 97 171.64.15.67 (2 Mar 2003 03:09:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4701

Hi,

I remember a while ago I received an email from Guido informing me about
some interface (or something like that) assigned to me for project #3.
Unfortunately my email account "mingying" was closed by school without any
warning, so I lost everything. I'm wondering would some TA please send me
that email again, this time to  I believe TAs only have
my email address "mingying" in the class distribution list. Would you
please add "myc" to it so I can receive class announcement later?

Another question is: are the two previous submitted projects still
reserved in the class directory so I can get them back? I didn't have any
backup outside of "mingying" account.

Thanks a lot.
Mingying


PS, you can use whois to verify that "mingying" and "myc" both belongs to
me.

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: TCP UDP packets addressed to router
Date: Sun, 2 Mar 2003 04:35:04 +0000 (UTC)
Organization: Stanford University
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine43.stanford.edu
X-Trace: news.Stanford.EDU 1046579704 2501 171.64.15.118 (2 Mar 2003 04:35:04 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4702


If I get one of these, I send a port unreachable message. I will send this out
of the interface connected to the router (or actual machine) of the appropriate subnet for the source IP.
This in general is not the IP the packet is address to and produces unpleasing traceroute output.

Do you want us to put the source of the packet to be the IP of the destination rather than the IP
of the transmitting interface? The ICMP RFC says nothing about the source IP.
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: lost info. from email
Date: Sun, 2 Mar 2003 18:07:21 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 29
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046628441 24984 171.64.15.112 (2 Mar 2003 18:07:21 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4703

Replying privately...

SteveJ

In article 
Mingying Chen   wrote:
>Hi,
>
>I remember a while ago I received an email from Guido informing me about
>some interface (or something like that) assigned to me for project #3.
>Unfortunately my email account "mingying" was closed by school without any
>warning, so I lost everything. I'm wondering would some TA please send me
>that email again, this time to  I believe TAs only have
>my email address "mingying" in the class distribution list. Would you
>please add "myc" to it so I can receive class announcement later?
>
>Another question is: are the two previous submitted projects still
>reserved in the class directory so I can get them back? I didn't have any
>backup outside of "mingying" account.
>
>Thanks a lot.
>Mingying
>
>
>PS, you can use whois to verify that "mingying" and "myc" both belongs to
>me.
>


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: TCP UDP packets addressed to router
Date: Sun, 2 Mar 2003 18:12:12 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 33
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046628732 25182 171.64.15.112 (2 Mar 2003 18:12:12 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4704

Summarizing our private conversation of March 1:


So the packet arrives on eth2, but is addressed to eth0, for
instance? You're suggesting that if the reply will be sent
out eth2 the dest addr should be set to eth2 and not eth0?

This raises an interesting question, and I'm not sure I
have the answer.  Maybe the ICMP packet source addr should
be eth0, or maybe it should be eth2.

I'm guessing it should be eth2, and the recipient of the
ICMP packet should look in the packet header fragment in
the ICMP payload to determine the offending packet was
sent to eth0.

Good question, I will try to find out for you.  Other TAs,
any thoughts?

SteveJ


In article 
David Seetapun  wrote:
>
>If I get one of these, I send a port unreachable message. I will send this out
>of the interface connected to the router (or actual machine) of the appropriate subnet for the source IP.
>This in general is not the IP the packet is address to and produces unpleasing traceroute output.
>
>Do you want us to put the source of the packet to be the IP of the destination rather than the IP
>of the transmitting interface? The ICMP RFC says nothing about the source IP.


.

Path: shelby.stanford.edu!not-for-mail
From: "Nishant Verman" 
Newsgroups: su.class.cs244a
Subject: Re: What is supposed to happen?
Date: Sun, 2 Mar 2003 10:58:29 -0800
Lines: 53
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: nishant.stanford.edu
X-Trace: news.Stanford.EDU 1046631514 26508 128.12.185.34 (2 Mar 2003 18:58:34 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4705

My router sends the ICMP Host Unreachable packet after 5 ARP retries.
However the ftp application keeps on sending the connection setup requests
(and does not terminate). Is this a problem with my ICMP packet (shown
below)?

10:31:15.939835 70:0:0:35:0:1 0:e0:81:3:fd:9e ip 70:
nishant-router-3.Stanford.E
DU > elaine7.Stanford.EDU: icmp: host ftp-nishant.Stanford.EDU unreachable
for e
laine7.Stanford.EDU.35134 > ftp-nishant.Stanford.EDU.ftp: [|tcp] (DF) (ttl
59, i
d 18309, len 48) (DF) (ttl 64, id 18309, len 56)
                         4500 0038 4785 4000 4001 f674 c0a8 819a
                         ab40 0f48 0301 357a 0000 0000 4500 0030
                         4785 4000 3b06 fb76 ab40 0f48 c0a8 819b
                         893e 0015 e90b 5525

thanks,
Nishant


"Steve Jacobson"  wrote in message

> >
> >My router generates an ICMP host unreachable after 5 arp tries with no
success.
>
> After one arp transmission plus 5 retries.
>
> >How is ftp supposed to react?
>
> I'll assume that ftp is trying to establish a connection to some
> server, and the connection to that server cannot be established
> because the arp times out.  The ftp session would fail at this
> point, aborting with some sort of "cannot connect" message.
>
> SteveJ
>
> >
> >10:23:16.534697 70:0:0:43:0:1 0:e0:81:3:fd:9e ip 70:
seetapun-router-2.Stanford.EDU > elaine3.Stanford.EDU
> >: icmp: host ftp-seetapun.Stanford.EDU unreachable for
elaine3.Stanford.EDU.41656 > ftp-seetapun.Stanford.
> >EDU.ftp: [|tcp] (DF) (ttl 60, id 12334, len 48) [tos 0xc0]  (ttl 64, id
1, len 56)
> >                         45c0 0038 0001 0000 4001 7dea c0a8 80ed
> >                         ab40 0f44 0301 9fdb f728 ffbe 4500 0030
> >                         302e 4000 3c06 11b6 ab40 0f44 c0a8 81b7
> >                         a2b8 0015 ab97 17d6
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: TTL question
Date: Sun, 02 Mar 2003 13:27:29 -0800
Lines: 24
Distribution: su
Message-ID: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046640449 877 128.12.91.22 (2 Mar 2003 21:27:29 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4706

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

I saw in the FAQ that we're supposed to send a Timeout ICMP message
whenever an arriving IP packet has a TTL field of 1 or 0.  Just wondering:
if we get an IP packet that's addressed to our router with a TTL field of
1 or 0, do we still send a Timeout message?  After all, it did reach its
destination.

Thanks,
Will Robinson



-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+Ynco4uIcqiwjnrURAq09AJ9rHjewoYmGKkNucKCfasPyJUaMnACeIZrz
wTWPRadbrIPrZ9ZfTsJkJzo=
=Me/u
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: Disappearing packets and VNS problems?
Date: Sun, 02 Mar 2003 15:05:58 -0800
Lines: 45
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046646347 4094 128.12.187.58 (2 Mar 2003 23:05:47 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4707


>There have been periodic reports of traffic stoppages.
>I'm not sure if anyone has gotten to the bottom of this.
>Martin?
>
>SteveJ

I'm not sure if this is it, but I haven't been getting any traffic
since last night at around 2 or so. I noticed today when I tried to
connect that the speed of the interfaces was 0:

Sending c_open (type=1 len=108)
Received Hardware Info with 19 entries
Fixed IP: 172.24.74.17
INTERFACE: eth0
Speed: 0
Hardware Address: 70:00:00:2c:00:01
Ethernet IP: 192.168.128.49
Subnet: 0.0.0.0
Mask: 0.0.0.0
INTERFACE: eth1
Speed: 0
Hardware Address: 70:00:00:2c:00:02
Ethernet IP: 192.168.128.191
Subnet: 0.0.0.0
Mask: 0.0.0.0
INTERFACE: eth2
Speed: 0
Hardware Address: 70:00:00:2c:00:06
Ethernet IP: 192.168.129.136
Subnet: 0.0.0.0
Mask: 0.0.0.0
Interface: eth0
  hardware address 70:00:00:2c:00:01
  ip address 192.168.128.49
Interface: eth1
  hardware address 70:00:00:2c:00:02
  ip address 192.168.128.191
Interface: eth2
  hardware address 70:00:00:2c:00:06
  ip address 192.168.129.136

I'm not entirely sure, but aren't the speeds supposed to be at least
10? That's what the handout examples indicate, and I seem to recall
that when things work, it says 10.
.

Path: shelby.stanford.edu!elaine43.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: Disappearing packets and VNS problems?
Date: Sun, 2 Mar 2003 15:05:52 -0800
Lines: 28
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine43.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046646354 4099 171.64.15.118 (2 Mar 2003 23:05:54 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4708

> >
> >Also occasionally, I will run my router and no packets will be coming in,
> >even when I do pings. I should be getting ARP requests, right? So I went and
> >tried running the original stub code. Same thing.
> >
> >After waiting some time, it usually starts working again.
>
> There have been periodic reports of traffic stoppages.
> I'm not sure if anyone has gotten to the bottom of this.
> Martin?
>
> SteveJ
>
> >
> >Is anybody running into the same problem? Please post.
> >
> >Thanks,
> >John


Have the TAs investigated this? I'm running into
the same problems. I get no packets even if I'm using the original code
without any modification.

I used to get a bunch of ARP requests in the past days but none today.

Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: Re: Disappearing packets and VNS problems?
Date: Sun, 02 Mar 2003 15:20:58 -0800
Lines: 27
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046647257 4621 128.12.91.22 (2 Mar 2003 23:20:57 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4709

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

> Have the TAs investigated this? I'm running into the same problems. I
> get no packets even if I'm using the original code without any
> modification.
> 
> I used to get a bunch of ARP requests in the past days but none today.

FWIW, I've been experiencing the same sorts of problems off and on
throughout yesterday and today, even when I just build the provided code
and try to connect.  I hadn't noticed the "Speed: 0" thing until now, but
sure enough I do show "Speed: 0" for all three of my interfaces when it's
not working...

I hope the TAs can diagnose this soon! :)

Will

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+YpHC4uIcqiwjnrURArLSAJ0QP7UgUMY3D0zX+vPqR7W4rIFl6wCeJebm
DF8JUK5JLNRYM/wf9dnm6hI=
=XcGA
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: ARP Reply Conventions
Date: Sun, 2 Mar 2003 23:43:58 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 54
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine34.stanford.edu
X-Trace: news.Stanford.EDU 1046648638 5318 171.64.15.109 (2 Mar 2003 23:43:58 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4710


Could someone confirm my understanding of the ARP 
request/reply conventions, as follows (RFC 826 
only seems to provide the simple case of end 
host, while we're implementing router handling of 
ARPs):

Router receives an ARP request (e.g., from the 
fire wall).

Router checks its list of interfaces, not there.

Router checks its ARP cache, not there (yet).

Router saves the received packet, creates and 
sends ARP request on each of its other 
interfaces; i.e., all but the interface the 
original ARP request came in on.  In these ARP 
packets, the source IP and Eth address are those 
of each router interface (In this sense, ARP 
requests are like chain letters >> receive one, 
generate/send 'n')..

The target host responds by sending an ARP reply.
In the ARP reply packet, the source IP  and Eth 
addr are those of the host; that is, the sought-after IP 
addr and the desired Eth addr are put in the 
source fields of an ARP reply;  Target IP and Eth 
addr fields have the router interface's 
addresses; so, the target fields have become 
destination fields (copied from the source fields 
of the router's ARP request).

Router receives the ARP reply, copies the source 
IP and Eth addr to its ARP cache, then creates 
and sends an ARP reply back to originator (e.g., 
the firewall); in this ARP packet, the source IP 
addr is the original sought-after IP address 
(i.e., the original "target", even though it's 
not one of the router's addresses), the source Eth addr is 
the Eth addr of the router interface on which the 
original ARP request was received (from the 
firewall), and the target 
IP addr and Eth addr are merely copied from the 
source IP and Eth addr of the original request 
(again, being used as destination fields).
 
So, the firewall's ARP cache (and presumably all 
router's ARP caches) end up with a table of IP 
addresses and associated NEXT-HOP Ethernet 
addresses, correct?  

Keith

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: It looks like both vr-server-a and vr-server-b are dead
Date: Mon, 3 Mar 2003 00:14:16 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine18.stanford.edu
X-Trace: news.Stanford.EDU 1046650456 6279 171.64.15.83 (3 Mar 2003 00:14:16 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4711


As a test a ran the stub code as given and nothing ever arrives.
.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!erikdw
From: Erik Damian Weathers 
Newsgroups: su.class.cs244a
Subject: Re: Disappearing packets and VNS problems?
Date: Sun, 2 Mar 2003 16:26:46 -0800
Lines: 38
Distribution: su
Message-ID: 
References:  
 
 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046651211 6760 171.64.15.85 (3 Mar 2003 00:26:51 GMT)
X-Complaints-To: 
To: Will Robinson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4712


I think that 'Speed: 0' is a red herring.  I had some successful
test runs earlier today w/ the Speed showing as 0.

- Erik


On Sun, 2 Mar 2003, Will Robinson wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> > Have the TAs investigated this? I'm running into the same problems. I
> > get no packets even if I'm using the original code without any
> > modification.
> >
> > I used to get a bunch of ARP requests in the past days but none today.
>
> FWIW, I've been experiencing the same sorts of problems off and on
> throughout yesterday and today, even when I just build the provided code
> and try to connect.  I hadn't noticed the "Speed: 0" thing until now, but
> sure enough I do show "Speed: 0" for all three of my interfaces when it's
> not working...
>
> I hope the TAs can diagnose this soon! :)
>
> Will
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.1 (GNU/Linux)
>
> iD8DBQE+YpHC4uIcqiwjnrURArLSAJ0QP7UgUMY3D0zX+vPqR7W4rIFl6wCeJebm
> DF8JUK5JLNRYM/wf9dnm6hI=
> =XcGA
> -----END PGP SIGNATURE-----
>
>

.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: local IP addresses in routing table
Date: Sun, 2 Mar 2003 17:36:32 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine41.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046655394 9088 171.64.15.116 (3 Mar 2003 01:36:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4713

hi,
Do we enter the IP addresses of the router in the routing table or just
access it off the interface list. (In the latter case, we would have to
look up the interface list before the routing table right?)
- In real routing tables, are not these addresses present in the routing
table? Do they have a flag saying if it is a local address or not?

thanks,
Sandhya

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: It looks like both vr-server-a and vr-server-b are dead
Date: Mon, 3 Mar 2003 03:14:32 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1046661272 12697 171.64.15.77 (3 Mar 2003 03:14:32 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4714

Thanks David,

They are back up and running now.

  Guido

> As a test a ran the stub code as given and nothing ever arrives.
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Guido Office hours
Date: Mon, 3 Mar 2003 03:20:50 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1046661650 12832 171.64.15.77 (3 Mar 2003 03:20:50 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4715

David Seetapun  wrote:

No they were hl normally.

> Have they been cancelled?
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Disappearing packets and VNS problems?
Date: Mon, 3 Mar 2003 03:30:46 +0000 (UTC)
Lines: 35
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1046662246 12832 171.64.15.77 (3 Mar 2003 03:30:46 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4716

Rafael,

the server was down, it's back up now.

  Guido

Rafael M Hernandez  wrote:
>> >
>> >Also occasionally, I will run my router and no packets will be coming in,
>> >even when I do pings. I should be getting ARP requests, right? So I went and
>> >tried running the original stub code. Same thing.
>> >
>> >After waiting some time, it usually starts working again.
>>
>> There have been periodic reports of traffic stoppages.
>> I'm not sure if anyone has gotten to the bottom of this.
>> Martin?
>>
>> SteveJ
>>
>> >
>> >Is anybody running into the same problem? Please post.
>> >
>> >Thanks,
>> >John


> Have the TAs investigated this? I'm running into
> the same problems. I get no packets even if I'm using the original code
> without any modification.

> I used to get a bunch of ARP requests in the past days but none today.

> Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Server Status...
Date: Mon, 3 Mar 2003 03:33:03 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1046662383 13191 171.64.15.77 (3 Mar 2003 03:33:03 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4717

Everyone,

the VNS server was down this afternoon, it is back up now. In general if
you don't see any packets (including no arp packets) and running the
original, vanilla unmodified stub code doesn't show any packets either
please mail appenz and casado directly, I only check new about once a day.

Thanks,

  Guido
.

Path: shelby.stanford.edu!not-for-mail
From: "Georg Petschnigg" 
Newsgroups: su.class.cs244a
Subject: Re: reading IP src addr causing bus error?
Date: Sun, 2 Mar 2003 20:23:43 -0800
Lines: 39
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: georgp.stanford.edu
X-Trace: news.Stanford.EDU 1046665427 15277 128.12.181.68 (3 Mar 2003 04:23:47 GMT)
X-Complaints-To: 
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4718

May I suggest that this bug in the code is announced more publically to the
class? I just spent 3 hours debugging this problem, which was neither
educational, rewarding nor interesting. I consulted the newsgroup numerous
times and just could not make the connection with this thread's subject and
the error I was seeing.

Please update the sr_protocol.h file and notify the class of this bug.

Thanks,

Georg

"Martin Casado"  wrote in message

>
> > Actually, see the thread "IP Header Frame Alignment"... I've posted some
> > demo lines there with exactly the same problem as you're describing.
> >
> > The solution (suggested by Kai-Min) was to add the "packed" line that
> > appears in all the other structure declarations to the struct ip
> > declaration:
> > struct ip {
> > ...
> > } __attribute__ ((packed)) ;
> >
> > that's underscore x 2, "attribute", underscore x 2, space, "((packed))"
> >
> > This isn't an official TA-sancitioned solution (maybe some TA could give
> > a go / no-go for it?), but it hasn't _broken_ any of my code - and
> > completely resolved the problem you describe, as well as allowing me to
> > do ip_hdr->ip_v and ip_hdr->ip_hl without getting bus errors.
>
>   This should actually be added to the sr_protocol.h file... and is the
>   appropriate method of going about the problem. Thanks Kevin.
>
>   /mc
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Steven Bergsieker" 
Newsgroups: su.class.cs244a
Subject: Down Again?
Date: Sun, 02 Mar 2003 20:48:33 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: imladris.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
X-Trace: news.Stanford.EDU 1046666913 16019 128.12.62.22 (3 Mar 2003 04:48:33 GMT)
X-Complaints-To: 
To:  
User-Agent: Pan/0.13.0 (The whole remains beautiful)
Xref: shelby.stanford.edu su.class.cs244a:4719

You've probably gotten this a few times already, but I think the servers
are down again...

I tried running the stub code with my topology (65) and got nothing.  I
also tried just running it without a topology and got this:

elaine9:~/cs244a/sr_stub> ./sr
Destination: 0.0.0.0
  Gateway : 172.24.74.17
  Mask : 0.0.0.0
  Interface : eth0
Client sberg connecting to Server vr-server-b:12345
Requesting topology 0
Sending c_open (type=1 len=108)
vns server closed session.
Reason: reservehost failed
sr_destroy_INSTANCE leaking memory, WHEEE!!!

Thanks,
Steven
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Server is back up...
Date: Mon, 3 Mar 2003 05:23:59 +0000 (UTC)
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1046669039 17170 171.64.15.77 (3 Mar 2003 05:23:59 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4720

vr-server-b is back up, please us it (and nor server a) for now.

  Guido
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Server - for the last time...
Date: Mon, 3 Mar 2003 07:21:30 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1046676090 21070 171.64.15.77 (3 Mar 2003 07:21:30 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4721

Everyone,

as the server was down twice today, there is now a watchdog running that
is monitoring it and that will re-start it periodically. As a result,
every two hours you will be disconnected from the server. Just re-connect
and everything should be fine.


  Guido
.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!laip
From: Peter Tuchen Lai 
Newsgroups: su.class.cs244a
Subject: Re: ARP replies
Date: Sun, 2 Mar 2003 23:34:10 -0800
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine36.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046676852 21717 171.64.15.111 (3 Mar 2003 07:34:12 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4722

> I am getting ARP requests and when I respond I then get IP packets.
> But when I send ARP requests for the IP's of my ftp or www servers
> I never get a reply. How can I see if those machines are alive?

	I'm having the exact same problem... I'm pretty sure my ARP
packets are going out on all of my interfaces, but maybe I'm doing
something really stupid here and I'm totally missing it?

.

Path: shelby.stanford.edu!not-for-mail
From: Peter Lai 
Newsgroups: su.class.cs244a
Subject: Re: ARP replies
Date: Mon, 03 Mar 2003 02:42:05 -0800
Lines: 15
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: peetah.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046688114 27986 128.12.187.58 (3 Mar 2003 10:41:54 GMT)
X-Complaints-To: 
X-Newsreader: Forte Agent 1.91/32.564
Xref: shelby.stanford.edu su.class.cs244a:4723

On Sun, 2 Mar 2003 23:34:10 -0800, Peter Tuchen Lai
 wrote:

>> I am getting ARP requests and when I respond I then get IP packets.
>> But when I send ARP requests for the IP's of my ftp or www servers
>> I never get a reply. How can I see if those machines are alive?
>
>	I'm having the exact same problem... I'm pretty sure my ARP
>packets are going out on all of my interfaces, but maybe I'm doing
>something really stupid here and I'm totally missing it?

	Nevermind, I figured it out. I actually had two bugs, one
which was setting both Ethernet/ARP dest addr to ff.ff.ff.ff.ff.ff and
the other which was not correctly propagating my interface data when I
iterated over them. Hunger does bad things to programmers ;)
.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 04:54:25 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1046696067 1960 128.12.79.199 (3 Mar 2003 12:54:27 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4724

> Router saves the received packet, creates and
> sends ARP request on each of its other
> interfaces; i.e., all but the interface the
> original ARP request came in on.  In these ARP
> packets, the source IP and Eth address are those
> of each router interface (In this sense, ARP
> requests are like chain letters >> receive one,
> generate/send 'n')..

why do we need to send the ARP on all of our interfaces? the routing table
should give the interface that the target lives on. So, for example, if
we're trying to get to vjchem-www from router vjchem, vjchem's routing table
will have an entry (hopefully) for vjchem-www. That entry will specify an
interface (say eth2). If the router doesn't know the ethernet address of
vjchem-www, then it sends an ARP request out on eth2. the routing table
tells it that the machine it's looking for lives on the otherside of eth2,
so there's no need to send an ARP out on eth1.

i *think* the whole point of ARP is not to determine if a machine is
reachable on a particular interface (something the routing table give us),
but rather to determine it's ethernet address on a particular interface.
unless i'm totally missing something, which is also possible...


.

Path: shelby.stanford.edu!elaine38.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: TTL question
Date: Mon, 3 Mar 2003 17:38:50 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine38.stanford.edu
X-Trace: news.Stanford.EDU 1046713130 9986 171.64.15.113 (3 Mar 2003 17:38:50 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4725

No, end stations do not drop packets based on the TTL value.
When a packet is addressed to the router, the router behaves
like an end station with regards to that packet.

SteveJ

>
>I saw in the FAQ that we're supposed to send a Timeout ICMP message
>whenever an arriving IP packet has a TTL field of 1 or 0.  Just wondering:
>if we get an IP packet that's addressed to our router with a TTL field of
>1 or 0, do we still send a Timeout message?  After all, it did reach its
>destination.
>

.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: What is supposed to happen?
Date: Mon, 3 Mar 2003 19:53:53 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 29
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1046721233 15583 171.64.15.106 (3 Mar 2003 19:53:53 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4726

It would be helpful to see the link layer header, to check the
addresses and to make sure the ethertype is correct.

If I'm reading this right, the high-order flags bit is set in
the IP header, but RFC791 says that bit is reserved and must be 0.

I didn't check things in detail, but saw no obvious problems.
I recommend using ethereal to analyze the packet in greater
detail.

SteveJ

>My router sends the ICMP Host Unreachable packet after 5 ARP retries.
>However the ftp application keeps on sending the connection setup requests
>(and does not terminate). Is this a problem with my ICMP packet (shown
>below)?
>
>10:31:15.939835 70:0:0:35:0:1 0:e0:81:3:fd:9e ip 70:
>nishant-router-3.Stanford.E
>DU > elaine7.Stanford.EDU: icmp: host ftp-nishant.Stanford.EDU unreachable
>for e
>laine7.Stanford.EDU.35134 > ftp-nishant.Stanford.EDU.ftp: [|tcp] (DF) (ttl
>59, i
>d 18309, len 48) (DF) (ttl 64, id 18309, len 56)
>                         4500 0038 4785 4000 4001 f674 c0a8 819a
>                         ab40 0f48 0301 357a 0000 0000 4500 0030
>                         4785 4000 3b06 fb76 ab40 0f48 c0a8 819b
>                         893e 0015 e90b 5525
>
.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 20:03:46 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 72
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1046721826 16091 171.64.15.106 (3 Mar 2003 20:03:46 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4727

Comments inline:

In article 
Keith A Primdahl  wrote:
>
>Could someone confirm my understanding of the ARP 
>request/reply conventions, as follows (RFC 826 
>only seems to provide the simple case of end 
>host, while we're implementing router handling of 
>ARPs):
>
>Router receives an ARP request (e.g., from the 
>fire wall).
>
>Router checks its list of interfaces, not there.
>
>Router checks its ARP cache, not there (yet).
>
>Router saves the received packet, creates and 
>sends ARP request on each of its other 
>interfaces; i.e., all but the interface the 
>original ARP request came in on.  In these ARP 
>packets, the source IP and Eth address are those 
>of each router interface (In this sense, ARP 
>requests are like chain letters >> receive one, 
>generate/send 'n')..

If the router has no route to the subnet containing
the IP address, then the "broadcast to all but the
incoming interface" idea applies.  Otherwise the
router sends the ARP request out the interface
indicated by the routing table only.

>
>The target host responds by sending an ARP reply.
>In the ARP reply packet, the source IP  and Eth 
>addr are those of the host; that is, the sought-after IP 
>addr and the desired Eth addr are put in the 
>source fields of an ARP reply;  Target IP and Eth 
>addr fields have the router interface's 
>addresses; so, the target fields have become 
>destination fields (copied from the source fields 
>of the router's ARP request).
>
>Router receives the ARP reply, copies the source 
>IP and Eth addr to its ARP cache, then creates 
>and sends an ARP reply back to originator (e.g., 
>the firewall); in this ARP packet, the source IP 
>addr is the original sought-after IP address 
>(i.e., the original "target", even though it's 
>not one of the router's addresses), the source Eth addr is 
>the Eth addr of the router interface on which the 
>original ARP request was received (from the 
>firewall), and the target 
>IP addr and Eth addr are merely copied from the 
>source IP and Eth addr of the original request 
>(again, being used as destination fields).
> 
>So, the firewall's ARP cache (and presumably all 
>router's ARP caches) end up with a table of IP 
>addresses and associated NEXT-HOP Ethernet 
>addresses, correct?  

Yes.

SteveJ

>
>Keith
>


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: local IP addresses in routing table
Date: Mon, 3 Mar 2003 20:12:32 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1046722352 16797 171.64.15.106 (3 Mar 2003 20:12:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4728

I consider this to be an implementation detail.  However,
I think it would be unusual to put the router interfaces
in the routing table.  

At some point, you need special logic to differentiate
between an address or subnet you want to forward to and
an address owned by the router.

SteveJ

In article 
Sandhya Kunnatur   wrote:
>hi,
>Do we enter the IP addresses of the router in the routing table or just
>access it off the interface list. (In the latter case, we would have to
>look up the interface list before the routing table right?)
>- In real routing tables, are not these addresses present in the routing
>table? Do they have a flag saying if it is a local address or not?
>
>thanks,
>Sandhya
>


.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 20:20:26 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 34
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine31.stanford.edu
X-Trace: news.Stanford.EDU 1046722826 17265 171.64.15.106 (3 Mar 2003 20:20:26 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4729

In article 
Vijay Chemburkar  wrote:
>> Router saves the received packet, creates and
>> sends ARP request on each of its other
>> interfaces; i.e., all but the interface the
>> original ARP request came in on.  In these ARP
>> packets, the source IP and Eth address are those
>> of each router interface (In this sense, ARP
>> requests are like chain letters >> receive one,
>> generate/send 'n')..
>
>why do we need to send the ARP on all of our interfaces? the routing table
>should give the interface that the target lives on. So, for example, if
>we're trying to get to vjchem-www from router vjchem, vjchem's routing table
>will have an entry (hopefully) for vjchem-www. That entry will specify an
>interface (say eth2). If the router doesn't know the ethernet address of
>vjchem-www, then it sends an ARP request out on eth2. the routing table
>tells it that the machine it's looking for lives on the otherside of eth2,
>so there's no need to send an ARP out on eth1.

If the subnet containing the destination IP address is in the
routing table, then the ARP request is only sent out the
indicated interface.

>
>i *think* the whole point of ARP is not to determine if a machine is
>reachable on a particular interface (something the routing table give us),
>but rather to determine it's ethernet address on a particular interface.
>unless i'm totally missing something, which is also possible...

Yes, that is the point of an ARP request.

SteveJ

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 12:29:05 -0800
Lines: 84
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1046723347 17820 128.12.85.0 (3 Mar 2003 20:29:07 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4730

Maybe I'm misinterpreting the purpose of ARP requests, but why would the
firewall be sending an ARP request for anything but the interface of the
router to which it is directly connected? Why does it need to know, for
example, the MAC address of www-user or ftp-user? It's not connected to the
same ethernet as those servers, so knowing their MAC addresses isn't going
to help in the least, because any packets destined to them will still have
to use IP to get routed to them.

"Steve Jacobson"  wrote in message

> Comments inline:
>
> In article 
> Keith A Primdahl  wrote:
> >
> >Could someone confirm my understanding of the ARP
> >request/reply conventions, as follows (RFC 826
> >only seems to provide the simple case of end
> >host, while we're implementing router handling of
> >ARPs):
> >
> >Router receives an ARP request (e.g., from the
> >fire wall).
> >
> >Router checks its list of interfaces, not there.
> >
> >Router checks its ARP cache, not there (yet).
> >
> >Router saves the received packet, creates and
> >sends ARP request on each of its other
> >interfaces; i.e., all but the interface the
> >original ARP request came in on.  In these ARP
> >packets, the source IP and Eth address are those
> >of each router interface (In this sense, ARP
> >requests are like chain letters >> receive one,
> >generate/send 'n')..
>
> If the router has no route to the subnet containing
> the IP address, then the "broadcast to all but the
> incoming interface" idea applies.  Otherwise the
> router sends the ARP request out the interface
> indicated by the routing table only.
>
> >
> >The target host responds by sending an ARP reply.
> >In the ARP reply packet, the source IP  and Eth
> >addr are those of the host; that is, the sought-after IP
> >addr and the desired Eth addr are put in the
> >source fields of an ARP reply;  Target IP and Eth
> >addr fields have the router interface's
> >addresses; so, the target fields have become
> >destination fields (copied from the source fields
> >of the router's ARP request).
> >
> >Router receives the ARP reply, copies the source
> >IP and Eth addr to its ARP cache, then creates
> >and sends an ARP reply back to originator (e.g.,
> >the firewall); in this ARP packet, the source IP
> >addr is the original sought-after IP address
> >(i.e., the original "target", even though it's
> >not one of the router's addresses), the source Eth addr is
> >the Eth addr of the router interface on which the
> >original ARP request was received (from the
> >firewall), and the target
> >IP addr and Eth addr are merely copied from the
> >source IP and Eth addr of the original request
> >(again, being used as destination fields).
> >
> >So, the firewall's ARP cache (and presumably all
> >router's ARP caches) end up with a table of IP
> >addresses and associated NEXT-HOP Ethernet
> >addresses, correct?
>
> Yes.
>
> SteveJ
>
> >
> >Keith
> >
>
>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 12:45:47 -0800
Lines: 20
Distribution: su
Message-ID: 
References:  
 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046724348 18641 171.64.15.117 (3 Mar 2003 20:45:48 GMT)
X-Complaints-To: 
To: Rene Patnode 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4731


> Maybe I'm misinterpreting the purpose of ARP requests, but why would the
> firewall be sending an ARP request for anything but the interface of the
> router to which it is directly connected?  Why does it need to know, for
> example, the MAC address of www-user or ftp-user?

 The firewall does not need to know the MAC address of www-user or ftp-user,
 the only MAC address required by the firewall is that of eth0 of the virtual
 router.  The virtual router, however, does need to know the MAC addresses of
 the application servers in order to forward the packets to the correct
 hardware address.

 /mc

> It's not connected to the
> same ethernet as those servers, so knowing their MAC addresses isn't going to
> help in the least, because any packets destined to them will still have to
> use IP to get routed to them.


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 12:49:30 -0800
Lines: 40
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1046724571 18726 128.12.85.0 (3 Mar 2003 20:49:31 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4732

Right... that's what I thought... however, Steve's previous post seems to
contradict this.

"If the router has no route to the subnet containing
the IP address, then the "broadcast to all but the
incoming interface" idea applies.  Otherwise the
router sends the ARP request out the interface
indicated by the routing table only."

Why would you need to broadcast anything with regard to ARP requests?

"Martin Casado"  wrote in message

>
> > Maybe I'm misinterpreting the purpose of ARP requests, but why would the
> > firewall be sending an ARP request for anything but the interface of the
> > router to which it is directly connected?  Why does it need to know, for
> > example, the MAC address of www-user or ftp-user?
>
>  The firewall does not need to know the MAC address of www-user or
ftp-user,
>  the only MAC address required by the firewall is that of eth0 of the
virtual
>  router.  The virtual router, however, does need to know the MAC addresses
of
>  the application servers in order to forward the packets to the correct
>  hardware address.
>
>  /mc
>
> > It's not connected to the
> > same ethernet as those servers, so knowing their MAC addresses isn't
going to
> > help in the least, because any packets destined to them will still have
to
> > use IP to get routed to them.
>
>


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 13:01:58 -0800
Lines: 63
Distribution: su
Message-ID: 
References:  
  
 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046725319 19236 171.64.15.117 (3 Mar 2003 21:01:59 GMT)
X-Complaints-To: 
To: Rene Patnode 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4733


> Right... that's what I thought... however, Steve's previous post seems to
> contradict this.
>
> "If the router has no route to the subnet containing
> the IP address, then the "broadcast to all but the
> incoming interface" idea applies.  Otherwise the
> router sends the ARP request out the interface
> indicated by the routing table only."
>
> Why would you need to broadcast anything with regard to ARP requests?


 I'm not exactly sure what Steve was saying in the quoted excerpt .. let me try
 and clear things up.

 1. firewall on receipt of a packet packet, looks up next hop, and sends ARP
 request to get MAC of next hop.
 2. On receipt of ARP reply from student's router, the firewall forwards the
 packet to the students router.
 3. The student's router , on receipt of the packet,looks up the next hop in
 its routing table .. (if the next hop is 0.0.0.0 in the routing table, the
 destination address is used as the next hop) if the student's router does not
 have the hardware address for the next hop (in the arp cache), it will have to
 send an ARP request out of the correct interface (as denoted by the routing
 table) to acquire that MAC address.

 Does this clear things up?

 /mc


> "Martin Casado"  wrote in message
> 
> >
> > > Maybe I'm misinterpreting the purpose of ARP requests, but why would the
> > > firewall be sending an ARP request for anything but the interface of the
> > > router to which it is directly connected?  Why does it need to know, for
> > > example, the MAC address of www-user or ftp-user?
> >
> >  The firewall does not need to know the MAC address of www-user or
> ftp-user,
> >  the only MAC address required by the firewall is that of eth0 of the
> virtual
> >  router.  The virtual router, however, does need to know the MAC addresses
> of
> >  the application servers in order to forward the packets to the correct
> >  hardware address.
> >
> >  /mc
> >
> > > It's not connected to the
> > > same ethernet as those servers, so knowing their MAC addresses isn't
> going to
> > > help in the least, because any packets destined to them will still have
> to
> > > use IP to get routed to them.
> >
> >
>
>
>

.

Path: shelby.stanford.edu!saga9.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: no ARP replies?
Date: Mon, 3 Mar 2003 21:29:48 +0000 (UTC)
Lines: 119
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga9.stanford.edu
X-Trace: news.Stanford.EDU 1046726988 20392 171.64.15.139 (3 Mar 2003 21:29:48 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4734

1) I get a ARP request for my router
2) I reply to the ARP request
3) I get a IP packet for ftp-ceekay
4) I send a ARP request for ftp-ceekay

but I am not getting any reply....
I have attached the TCP dump below.

thanx,
ceekay


ping 192.168.129.73
PING ftp-ceekay.Stanford.EDU (192.168.129.73): 56 data bytes
no reply from ftp-ceekay.Stanford.EDU within 1 sec

no reply from ftp-ceekay.Stanford.EDU within 1 sec
packet seq=0 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
packet seq=1 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
packet seq=2 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
no reply from ftp-ceekay.Stanford.EDU within 1 sec
no reply from ftp-ceekay.Stanford.EDU within 1 sec
no reply from ftp-ceekay.Stanford.EDU within 1 sec
packet seq=3 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
packet seq=4 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
packet seq=5 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
^C
---- Waiting for outstanding packets ----
^C
---- ftp-ceekay.Stanford.EDU (192.168.129.73) PING Statistics ----
7 packets transmitted, 6 packets bounced, 0 packets received, 100% packet loss



TCP DUMP
-------

13:13:41.235744 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
l vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8051 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 0000
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         00e0 8103 fd9e
13:13:42.241362 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
l vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8051 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 0000
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         00e0 8103 fd9e
13:13:42.879202 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU t
ell vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8011 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 0000
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         00e0 8103 fd9e
13:13:42.879601 0:e0:81:3:fd:9e Broadcast arp 60: arp reply ceekay-router-1.Stanford.EDU (70
:0:0:c:0:1) is-at 70:0:0:c:0:1 (0:e0:81:3:fd:9e)
                         0001 0800 0604 0002 7000 000c 0001 c0a8
                         8011 00e0 8103 fd9e ac18 4a11 0000 0000
                         0000 0000 0000 0000 0000 0000 0000
13:13:42.897160 0:e0:81:3:fd:9e Broadcast arp 84: arp reply ceekay-router-1.Stanford.EDU (70
:0:0:c:0:1) is-at 70:0:0:c:0:1 (0:e0:81:3:fd:9e)
                         0001 0800 0604 0002 7000 000c 0001 c0a8
                         8011 00e0 8103 fd9e ac18 4a11 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 0000
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         00e0 8103 fd9e
13:13:43.006149 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine21.Stanford.EDU.49491 > ftp-ceekay
..Stanford.EDU.ftp: S [tcp sum ok] 3470353073:3470353073(0) win 24820 <nop,nop,sackOK,mss 146
0> (DF) (ttl 60, id 24617, len 48)
                         4500 0030 6029 4000 3c06 e216 ab40 0f56
                         c0a8 8149 c153 0015 ced9 62b1 0000 0000
                         7002 60f4 32af 0000 0101 0402 0204 05b4
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         00e0 8103 fd9e 0806
13:13:43.006502 70:0:0:c:0:1 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceek
ay-router-1.Stanford.EDU
                         0001 0800 0604 0001 7000 000c 0001 c0a8
                         8011 0000 0000 0000 c0a8 8149
13:13:43.242501 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
l vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8051 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 05b4
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         7000 000c 0001
13:13:44.236237 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
l vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8051 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 05b4
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         7000 000c 0001
13:13:45.294703 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has vr-server-a-1.Stanford.EDU tel
l vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 ac18 4a12 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 05b4
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         7000 000c 0001
13:13:45.797192 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
l vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8051 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 05b4
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         7000 000c 0001
13:13:46.244118 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine21.Stanford.EDU.49491 > ftp-ceekay
..Stanford.EDU.ftp: S [tcp sum ok] 3470353073:3470353073(0) win 24820 <nop,nop,sackOK,mss 146
0> (DF) (ttl 60, id 24618, len 48)
                         4500 0030 602a 4000 3c06 e215 ab40 0f56
                         c0a8 8149 c153 0015 ced9 62b1 0000 0000
                         7002 60f4 32af 0000 0101 0402 0204 05b4
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         7000 000c 0001 0806

.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Local addresses
Date: Mon, 03 Mar 2003 14:01:34 -0800
Lines: 26
Distribution: su
Message-ID: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046728894 21601 128.12.72.54 (3 Mar 2003 22:01:34 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4735

I'm slightly confused how to handle "local" addresses... let me explain.

For example, if the routing table has:
net = .128, mask = .128, gw = .130, interface = eth2

And a topology like:
--- (eth0=?) router (eth2=.129) --- (.130) gateway --- (.142)
That means an incoming packet destined for .142 would be sent to .130?

But consider:
--- (eth0=?) router (eth2=.129) --- (.130) gateway
                                |--- (.142) end host
I'm thinking that, if .142 was on the router's side of the gateway 
(sketched above), there would be another entry in the routing table - 
i.e. it would look like
net = .142, mask = .255, gw = .142, interface = eth2  // direct to .142
net = .128, mask = .128, gw = .130, interface = eth2  // rest of subnet
And if the .142 entry wasn't there, the router would always send packets 
for .142 straight to .130, even if it could go to .142 directly?
So really, once I've found a match in the routing table, I'm just 
sending to the specified gateway (give or take an ARP request).  Is this 
correct?

Seems I'm thinking too much.  This is probably dangerous.
-Kevin

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: no ARP replies?
Date: Mon, 3 Mar 2003 14:23:26 -0800
Lines: 144
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046730209 22477 171.64.15.87 (3 Mar 2003 22:23:29 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4736



 There are a couple of problems here ...

 ** ARP REPLY TO FIREWALL
 12:13:42.897160 0:e0:81:3:fd:9e Broadcast arp 84: arp reply ceekay-router-1.Stanford.EDU (70
 :0:0:c:0:1) is-at 70:0:0:c:0:1 (0:e0:81:3:fd:9e)

 ARP replying to broadcast is bad ... send the reply back to the firewall MAC
 address.

 ** ARP REQUEST TO  ADD SERVER
 13:13:43.006502 70:0:0:c:0:1 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceek
 ay-router-1.Stanford.EDU

 Check which interface you are sending your request out of.  Notice that the
 source MAC address of your interface in your ARP reply to the firewall is the
 same as the source address in your ARP request.  This is obviously wrong since
 you are sending your ARP request out of another interface.  Either you are
 using the wrond interface ... or your MAC address is incorrect.

 /mc

> 1) I get a ARP request for my router
> 2) I reply to the ARP request
> 3) I get a IP packet for ftp-ceekay
> 4) I send a ARP request for ftp-ceekay
>
> but I am not getting any reply....
> I have attached the TCP dump below.
>
> thanx,
> ceekay
>
>
> ping 192.168.129.73
> PING ftp-ceekay.Stanford.EDU (192.168.129.73): 56 data bytes
> no reply from ftp-ceekay.Stanford.EDU within 1 sec
>
> no reply from ftp-ceekay.Stanford.EDU within 1 sec
> packet seq=0 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
> packet seq=1 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
> packet seq=2 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
> no reply from ftp-ceekay.Stanford.EDU within 1 sec
> no reply from ftp-ceekay.Stanford.EDU within 1 sec
> no reply from ftp-ceekay.Stanford.EDU within 1 sec
> packet seq=3 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
> packet seq=4 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
> packet seq=5 bounced at vr-firewall.Stanford.EDU (171.64.74.9): Host unreachable
> ^C
> ---- Waiting for outstanding packets ----
> ^C
> ---- ftp-ceekay.Stanford.EDU (192.168.129.73) PING Statistics ----
> 7 packets transmitted, 6 packets bounced, 0 packets received, 100% packet loss
>
>
>
> TCP DUMP
> -------
>
> 13:13:41.235744 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
> l vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 13:13:42.241362 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
> l vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 13:13:42.879202 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU t
> ell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8011 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 13:13:42.879601 0:e0:81:3:fd:9e Broadcast arp 60: arp reply ceekay-router-1.Stanford.EDU (70
> :0:0:c:0:1) is-at 70:0:0:c:0:1 (0:e0:81:3:fd:9e)
>                          0001 0800 0604 0002 7000 000c 0001 c0a8
>                          8011 00e0 8103 fd9e ac18 4a11 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000
> 13:13:42.897160 0:e0:81:3:fd:9e Broadcast arp 84: arp reply ceekay-router-1.Stanford.EDU (70
> :0:0:c:0:1) is-at 70:0:0:c:0:1 (0:e0:81:3:fd:9e)
>                          0001 0800 0604 0002 7000 000c 0001 c0a8
>                          8011 00e0 8103 fd9e ac18 4a11 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 13:13:43.006149 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine21.Stanford.EDU.49491 > ftp-ceekay
> .Stanford.EDU.ftp: S [tcp sum ok] 3470353073:3470353073(0) win 24820 <nop,nop,sackOK,mss 146
> 0> (DF) (ttl 60, id 24617, len 48)
>                          4500 0030 6029 4000 3c06 e216 ab40 0f56
>                          c0a8 8149 c153 0015 ced9 62b1 0000 0000
>                          7002 60f4 32af 0000 0101 0402 0204 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e 0806
> 13:13:43.006502 70:0:0:c:0:1 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceek
> ay-router-1.Stanford.EDU
>                          0001 0800 0604 0001 7000 000c 0001 c0a8
>                          8011 0000 0000 0000 c0a8 8149
> 13:13:43.242501 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
> l vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          7000 000c 0001
> 13:13:44.236237 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
> l vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          7000 000c 0001
> 13:13:45.294703 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has vr-server-a-1.Stanford.EDU tel
> l vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 ac18 4a12 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          7000 000c 0001
> 13:13:45.797192 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tel
> l vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          7000 000c 0001
> 13:13:46.244118 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine21.Stanford.EDU.49491 > ftp-ceekay
> .Stanford.EDU.ftp: S [tcp sum ok] 3470353073:3470353073(0) win 24820 <nop,nop,sackOK,mss 146
> 0> (DF) (ttl 60, id 24618, len 48)
>                          4500 0030 602a 4000 3c06 e215 ab40 0f56
>                          c0a8 8149 c153 0015 ced9 62b1 0000 0000
>                          7002 60f4 32af 0000 0101 0402 0204 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          7000 000c 0001 0806
>
>

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Local addresses
Date: Mon, 3 Mar 2003 14:29:53 -0800
Lines: 40
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046730595 22627 171.64.15.87 (3 Mar 2003 22:29:55 GMT)
X-Complaints-To: 
To: Kevin Christopher 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4737


> I'm slightly confused how to handle "local" addresses... let me explain.

 ok ;-)

>
> For example, if the routing table has:
> net = .128, mask = .128, gw = .130, interface = eth2
>
> And a topology like:
> --- (eth0=?) router (eth2=.129) --- (.130) gateway --- (.142)
> That means an incoming packet destined for .142 would be sent to .130?
>
> But consider:
> --- (eth0=?) router (eth2=.129) --- (.130) gateway
>                                 |--- (.142) end host
> I'm thinking that, if .142 was on the router's side of the gateway
> (sketched above), there would be another entry in the routing table -
> i.e. it would look like
> net = .142, mask = .255, gw = .142, interface = eth2  // direct to .142
> net = .128, mask = .128, gw = .130, interface = eth2  // rest of subnet
> And if the .142 entry wasn't there, the router would always send packets
> for .142 straight to .130, even if it could go to .142 directly?
> So really, once I've found a match in the routing table, I'm just
> sending to the specified gateway (give or take an ARP request).  Is this
> correct?
>
> Seems I'm thinking too much.  This is probably dangerous.

  Hmm .. does this help.?

  Given a matching entry in the routing table
  (aka (ip_dest & netmask) == (net & netmaks)) you know which interface to send
  the packet out of .. the only question unanswered is what the next hop is.
  If the routing table specifies a next hop of 0.0.0.0 then you arp for the
  destination address of the packet, otherwise, ARP for the next hop as
  specified in the routing table.  That is all there is to it.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Local addresses
Date: Mon, 03 Mar 2003 14:44:11 -0800
Lines: 64
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046731450 23198 171.64.74.37 (3 Mar 2003 22:44:10 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4738

Kevin,

> I'm slightly confused how to handle "local" addresses... let me explain.
> 
> For example, if the routing table has:
> net = .128, mask = .128, gw = .130, interface = eth2

Not good. This means the 7bit (128 addr) subnet .128 should be routed 
through next hop 130. However 130 is part of this subnet. This is not
a valid routing table!!

Any subnet in the routing table must either be local (directly 
connected, no next hop) or remote (using a direct hop that is on a local 
subnet).

e.g.

net=.192 mask=192 gw=130 if=eth2
net=.128 mask=192 gw=* if=eth2

The .128 (which includes the 130) is local, the .192 is remote and gets 
routed through 130.

If you want to be strict, for any indirect route (aka one with a 
gateway) there should be an entry in the routing table for a local 
network that contains the gateway (note: we are *NOT* strict).

> And a topology like:
> --- (eth0=?) router (eth2=.129) --- (.130) gateway --- (.142)
> That means an incoming packet destined for .142 would be sent to .130?

If these are 128 address subnets this is impossible as .129 and .142 are 
in the same subnet.

> But consider:
> --- (eth0=?) router (eth2=.129) --- (.130) gateway
>                                |--- (.142) end host

this is possible.

> I'm thinking that, if .142 was on the router's side of the gateway 
> (sketched above), there would be another entry in the routing table - 
> i.e. it would look like
> net = .142, mask = .255, gw = .142, interface = eth2  // direct to .142
> net = .128, mask = .128, gw = .130, interface = eth2  // rest of subnet

This is pretty ugly but would work. The right thing is to break up the 
subnet into networks before and after the gw.

> So really, once I've found a match in the routing table, I'm just 
> sending to the specified gateway (give or take an ARP request).  Is this 
> correct?

Yes this is correct. You can assume the routing table we test on makes 
sense, your router can just take the first match and run with it. You 
don't have to do any kind of sanity checks on the routing table!!

BTW, this assumes there is a gw! It could be that no gateway is 
specified (it is 0.0.0.0) and then the address is local (you directly 
send to the address itself). We likely won't test this notation but your 
router has to support it.

   Guido

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Local addresses
Date: Mon, 03 Mar 2003 14:44:52 -0800
Lines: 30
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046731491 23198 171.64.74.37 (3 Mar 2003 22:44:51 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4739

Oops, now you got more answers than you bargained for :-)

Kevin Christopher wrote:
> I'm slightly confused how to handle "local" addresses... let me explain.
> 
> For example, if the routing table has:
> net = .128, mask = .128, gw = .130, interface = eth2
> 
> And a topology like:
> --- (eth0=?) router (eth2=.129) --- (.130) gateway --- (.142)
> That means an incoming packet destined for .142 would be sent to .130?
> 
> But consider:
> --- (eth0=?) router (eth2=.129) --- (.130) gateway
>                                |--- (.142) end host
> I'm thinking that, if .142 was on the router's side of the gateway 
> (sketched above), there would be another entry in the routing table - 
> i.e. it would look like
> net = .142, mask = .255, gw = .142, interface = eth2  // direct to .142
> net = .128, mask = .128, gw = .130, interface = eth2  // rest of subnet
> And if the .142 entry wasn't there, the router would always send packets 
> for .142 straight to .130, even if it could go to .142 directly?
> So really, once I've found a match in the routing table, I'm just 
> sending to the specified gateway (give or take an ARP request).  Is this 
> correct?
> 
> Seems I'm thinking too much.  This is probably dangerous.
> -Kevin
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Slide/PS Discrepancy
Date: Mon, 03 Mar 2003 14:48:13 -0800
Lines: 27
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046731692 23283 171.64.74.37 (3 Mar 2003 22:48:12 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4740

Keith,

as far as i can tell it doesn't really matter, it's basically just 
re-numbering everyting by one. For the HW use the HW's definition, in 
general the slide's version is IMHO better.

   Guido

> There is a slight discrepancy between slide 5 of handout 8 and PS question
> #1.  In the slide it specifies:
>      AvgLength[n + 1] = (1 - weight) * AvgLen(n) + weight * SampleWeight[n]
> 
> In the homework assignment it says:
>     AvgLen[n] = (1-alpha) * AvgLen[n-1] + alpha * Length[n]
> 
> If the homework equation was a direct translation of the slides, it should
> read:
>     AvgLen[n] = (1-alpha) * AvgLen[n-1] + alpha * Length[n - 1]
> 
> In other words, should the average length at n use the sample weight from
> n-1 or from n.  It seems like n would be the logical choice, but this will
> effect all my equations, so I want to make sure.  Thanks.
> 
> Keith
> 
> 

.

Path: shelby.stanford.edu!not-for-mail
From: "Mike Ching" 
Newsgroups: su.class.cs244a
Subject: Re: Local addresses
Date: Mon, 3 Mar 2003 14:56:56 -0800
Lines: 25
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: starbase.stanford.edu
X-Trace: news.Stanford.EDU 1046732202 23593 128.12.141.50 (3 Mar 2003 22:56:42 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4741

Just to clarify, would we ever get a routing table, whose gateway (next hop)
value is 0.0.0.0?  My code currently doesn't do a check to make sure the
gateway value is 0.0.0.0.  I simply take it on faith that it is a valid IP
and use it to form my arp request.  Thanks.

Mike


"Martin Casado"  wrote in message

>
>   Given a matching entry in the routing table
>   (aka (ip_dest & netmask) == (net & netmaks)) you know which interface to
send
>   the packet out of .. the only question unanswered is what the next hop
is.
>   If the routing table specifies a next hop of 0.0.0.0 then you arp for
the
>   destination address of the packet, otherwise, ARP for the next hop as
>   specified in the routing table.  That is all there is to it.
>
>   /mc
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Mike Ching" 
Newsgroups: su.class.cs244a
Subject: Very slow connection
Date: Mon, 3 Mar 2003 15:10:50 -0800
Lines: 25
Distribution: su
Message-ID: 
NNTP-Posting-Host: starbase.stanford.edu
X-Trace: news.Stanford.EDU 1046733037 24114 128.12.141.50 (3 Mar 2003 23:10:37 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4742

When I was forwarding my IP packets, I forgot to update the ether_shost
value to that of the departing interface.  Instead, it has the original
ether_shost value of the incoming packet.  The system did not complain, and
the packet was send to its destination.  However, the weird effect is that
everything took forever.  It took more than a minute to open the web page,
and the ftp connection took several minutes to get to the user-name prompt.

I found the ether_shost omission by accident, and that little fix got rid of
the super slow network problem.  For the longest time, I thought it was
simply a problem with the network server simulation that everything was
crawling.

Just want to point it out in case others had the same problem.  I am
surprised by the symptom.  With the wrong ether_shost value, I would expect
either the packet never get delivered, or no noticeable effect at all.  To
have  the packet successfully deliver, while the response slow down to a
crawl seems like a weird result.

Mike

P.S. The slow down seem to result from  taking a long time for the
miss-formatted packet to reach its destination.



.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Local addresses
Date: Mon, 3 Mar 2003 15:38:42 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046734723 25095 171.64.15.87 (3 Mar 2003 23:38:43 GMT)
X-Complaints-To: 
To: Mike Ching 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4743


> Just to clarify, would we ever get a routing table, whose gateway (next hop)
> value is 0.0.0.0?  My code currently doesn't do a check to make sure the
> gateway value is 0.0.0.0.  I simply take it on faith that it is a valid IP
> and use it to form my arp request.  Thanks.
>

  There has been some confusion on this point which is partially my fault.
  Your router is REQUIRED to support a routing entry in which the next hop is
  not explicitly stated.  The recommended way to do this is to use 0.0.0.0 as
  the next hop (another option is 255.255.255.255), in this case your router
  should use the destination address as the next hop.

  /mc

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Very slow connection
Date: Mon, 3 Mar 2003 15:46:31 -0800
Lines: 34
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046735193 25456 171.64.15.87 (3 Mar 2003 23:46:33 GMT)
X-Complaints-To: 
To: Mike Ching 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4744


> When I was forwarding my IP packets, I forgot to update the ether_shost
> value to that of the departing interface.  Instead, it has the original
> ether_shost value of the incoming packet.  The system did not complain, and
> the packet was send to its destination.  However, the weird effect is that
> everything took forever.  It took more than a minute to open the web page,
> and the ftp connection took several minutes to get to the user-name prompt.
>
> I found the ether_shost omission by accident, and that little fix got rid of
> the super slow network problem.  For the longest time, I thought it was
> simply a problem with the network server simulation that everything was
> crawling.
>
> Just want to point it out in case others had the same problem.  I am
> surprised by the symptom.  With the wrong ether_shost value, I would expect
> either the packet never get delivered, or no noticeable effect at all.  To
> have  the packet successfully deliver, while the response slow down to a
> crawl seems like a weird result.
>
> Mike
>
> P.S. The slow down seem to result from  taking a long time for the
> miss-formatted packet to reach its destination.

 Thank you thank you thank you for pointing these things out ...... I've been
 poking around the system and it looks like the server is going down because of
 loops in the feedback mechanism due to incorrect hardware headers in packets.
 Of course the server should be bullet proof and handle these cases, but it is
 difficult to anticipate what sort of packets might be generated so reports
 like these are infinately helpful.

 Thanks again,
    /mc

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Very slow connection
Date: Mon, 03 Mar 2003 15:46:38 -0800
Lines: 34
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046735198 25383 171.64.74.37 (3 Mar 2003 23:46:38 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4745

Mike,

strange. No idea why this should have an effect on the performance. 
Maybe a built in safety feature of the kernel or hw??? Does not exactly 
sound plausible but I have no better idea.

   Guido

> When I was forwarding my IP packets, I forgot to update the ether_shost
> value to that of the departing interface.  Instead, it has the original
> ether_shost value of the incoming packet.  The system did not complain, and
> the packet was send to its destination.  However, the weird effect is that
> everything took forever.  It took more than a minute to open the web page,
> and the ftp connection took several minutes to get to the user-name prompt.
> 
> I found the ether_shost omission by accident, and that little fix got rid of
> the super slow network problem.  For the longest time, I thought it was
> simply a problem with the network server simulation that everything was
> crawling.
> 
> Just want to point it out in case others had the same problem.  I am
> surprised by the symptom.  With the wrong ether_shost value, I would expect
> either the packet never get delivered, or no noticeable effect at all.  To
> have  the packet successfully deliver, while the response slow down to a
> crawl seems like a weird result.
> 
> Mike
> 
> P.S. The slow down seem to result from  taking a long time for the
> miss-formatted packet to reach its destination.
> 
> 
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: Very slow connection
Date: Mon, 03 Mar 2003 15:47:24 -0800
Lines: 38
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046735244 25383 171.64.74.37 (3 Mar 2003 23:47:24 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2) Gecko/20021203
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4746

I c, that does make sense :-)

Martin Casado wrote:
>>When I was forwarding my IP packets, I forgot to update the ether_shost
>>value to that of the departing interface.  Instead, it has the original
>>ether_shost value of the incoming packet.  The system did not complain, and
>>the packet was send to its destination.  However, the weird effect is that
>>everything took forever.  It took more than a minute to open the web page,
>>and the ftp connection took several minutes to get to the user-name prompt.
>>
>>I found the ether_shost omission by accident, and that little fix got rid of
>>the super slow network problem.  For the longest time, I thought it was
>>simply a problem with the network server simulation that everything was
>>crawling.
>>
>>Just want to point it out in case others had the same problem.  I am
>>surprised by the symptom.  With the wrong ether_shost value, I would expect
>>either the packet never get delivered, or no noticeable effect at all.  To
>>have  the packet successfully deliver, while the response slow down to a
>>crawl seems like a weird result.
>>
>>Mike
>>
>>P.S. The slow down seem to result from  taking a long time for the
>>miss-formatted packet to reach its destination.
> 
> 
>  Thank you thank you thank you for pointing these things out ...... I've been
>  poking around the system and it looks like the server is going down because of
>  loops in the feedback mechanism due to incorrect hardware headers in packets.
>  Of course the server should be bullet proof and handle these cases, but it is
>  difficult to anticipate what sort of packets might be generated so reports
>  like these are infinately helpful.
> 
>  Thanks again,
>     /mc
> 

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: no ARP replies?
Date: Mon, 3 Mar 2003 15:49:06 -0800
Lines: 74
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046735351 25577 171.64.15.87 (3 Mar 2003 23:49:11 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4747



 Looks good to me!

 /mc

> Hi Martin,
>
> does this tcpdump look ok.
> I tried to fix the problems you pointed out.
>
> thanx,
> ceekay
>
> /usr/class/cs244a/bin/tcpdump -e -vvv -x -r logfile | more
> 15:38:29.796744 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0260 0000 0000 0002 c7d8 0000
>                          0000 0000 0000
> 15:38:30.797090 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 15:38:31.805064 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 15:38:32.797369 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 15:38:33.797558 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8051 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 15:38:33.981057 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8011 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e
> 15:38:33.981781 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
>                          0001 0800 0604 0002 7000 000c 0001 c0a8
>                          8011 00e0 8103 fd9e ac18 4a11 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000
> 15:38:33.983378 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine21.Stanford.EDU.49927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 1491147193:
> 1491147193(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 65245, len 48)
>                          4500 0030 fedd 4000 3c06 4362 ab40 0f56
>                          c0a8 8149 c307 0015 58e1 19b9 0000 0000
>                          7002 60f4 efeb 0000 0101 0402 0204 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          00e0 8103 fd9e 0806
> 15:38:33.983653 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
>                          0001 0800 0604 0001 7000 000c 0006 c0a8
>                          8011 0000 0000 0000 c0a8 8149
> 15:38:33.985010 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
>                          0001 0800 0604 0002 00e0 8104 26d8 c0a8
>                          8149 7000 000c 0006 c0a8 8011 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 05b4
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          7000 000c 0006
>
>

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Mon, 3 Mar 2003 16:57:04 -0800
Lines: 31
Distribution: su
Message-ID: 
References:  
  
  
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046739425 28635 171.64.15.87 (4 Mar 2003 00:57:05 GMT)
X-Complaints-To: 
To: Steve Jacobson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4748


> Hi Martin,
>
> Looks like I fumbled the reply.
>
> I guess there is never a reason for the router to
> send an arp request out more than one interface?

 No, ARPs should only go out the interface which requires the IP/MAC pairing.

> Now that I think about it, an arp would go out the
> interface connected to the subnet if there is a
> routing entry to that subnet.  If there is no route,
> the arp would go out the interface with the default
> route.

 Yes .. arps should only happen after the routing decision has been made, in
 which case the outgoing interface is already known.

>
> What happens if there is no route to the subnet and
> no default route?

 Then there is no route to the host and an ICMP host unreachable is returned to
 the source IP. I believe the correct ICMP type to send is .. ICMP UNREACH NET
 UNKOWN ( or HOST UNKNOWN).  Of course if there is not route to the source IP
 then the packet must be dropped.

 :-)
 /mc

.

Path: shelby.stanford.edu!elaine43.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: ARP Reply Conventions
Date: Tue, 4 Mar 2003 02:43:37 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 43
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine43.stanford.edu
X-Trace: news.Stanford.EDU 1046745817 3452 171.64.15.118 (4 Mar 2003 02:43:37 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4749

I need to correct a reply I made earlier.  Sorry if
I caused any confusion.

There is never a reason for the router to send an arp
request out more than one interface.  The arp should only
go out the interface which requires the IP/MAC pairing.

An arp request would go out the interface connected to the
correct subnet only if there is a routing entry to that
subnet.  If there is no route, the arp request would go
out the interface with the default route.

In other words, arp requests should only happen after the
routing decision has been made, in which case the outgoing
interface is already known.

If there is no route to the subnet and no default route in
the route cache, an ICMP host unreachable is returned to the
originator (the source IP address).

SteveJ

In article 
Steve Jacobson  wrote:
>Comments inline:
>
>>Router checks its ARP cache, not there (yet).
>>
>>Router saves the received packet, creates and 
>>sends ARP request on each of its other 
>>interfaces; i.e., all but the interface the 
>>original ARP request came in on.  In these ARP 
>>packets, the source IP and Eth address are those 
>>of each router interface (In this sense, ARP 
>>requests are like chain letters >> receive one, 
>>generate/send 'n')..
>
>If the router has no route to the subnet containing
>the IP address, then the "broadcast to all but the
>incoming interface" idea applies.  Otherwise the
>router sends the ARP request out the interface
>indicated by the routing table only.
>
.

Path: shelby.stanford.edu!saga8.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: bad tcp cksum?
Date: Tue, 4 Mar 2003 04:23:05 +0000 (UTC)
Lines: 51
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga8.stanford.edu
X-Trace: news.Stanford.EDU 1046751785 7404 171.64.15.138 (4 Mar 2003 04:23:05 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4750

Hi,

I am getting a bad tcp cksum error when I try to
send  a IP packet. PLease find the tcpdump below.

thanx,
ceekay

20:17:04.712907 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0000
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e
20:17:04.713289 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
			 0001 0800 0604 0002 7000 000c 0001 c0a8
			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
20:17:04.932354 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17541, len 48)
			 4500 0030 4485 4000 3c06 fda6 ab40 0f6a
			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
			 7002 60f4 df3b 0000 0101 0402 0204 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e 0806
20:17:04.932734 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0006 c0a8
20:17:05.026483 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
			 8149 7000 000c 0006 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006
20:17:08.078333 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17542, len 48)
			 4500 0030 4486 4000 3c06 fda5 ab40 0f6a
			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
			 7002 60f4 df3b 0000 0101 0402 0204 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
20:17:08.078781 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0006 c0a8
			 8011 0000 0000 0000 c0a8 8149
20:17:08.080103 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
			 8149 7000 000c 0006 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006
20:17:08.080476 70:0:0:c:0:6 0:e0:81:4:26:d8 ip 62: ceekay-router-3.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [bad tcp cksum 78b9!] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 17541, len 48)
			 4500 0030 4485 4000 3b06 7760 c0a8 8148
			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
			 7002 60f4 df3b 0000 0101 0402 0204 05b4
.

Path: shelby.stanford.edu!not-for-mail
From: "Enriko Aryanto" 
Newsgroups: su.class.cs244a
Subject: Re: IP src address when sending ICMP echo reply
Date: Mon, 3 Mar 2003 20:32:44 -0800
Lines: 45
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: earyanto.stanford.edu
X-Trace: news.Stanford.EDU 1046752365 7664 128.12.196.90 (4 Mar 2003 04:32:45 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4751

According to RFC 792 (ICMP) page 14:

"The address of the source in an echo message will be the destination of the
echo reply message. To form an echo reply message, the source and
destination addresses are simply reversed, the type code changed to 0, and
the checksum recomputed. "

So I guess we should not need to consult the routing table for the source
address/outgoing interface. In a misconfigured non-bidirectional router, I
believe sending packets back through their incoming interface will still
forward them correctly to their destination.

Enriko

"Martin Casado"  wrote in message

>
> > When we receive an ICMP echo request addressed to our router from
machine A,
> > can we simply swap the IP src/dst addresses from the request packet and
use
> > that in our reply packet? Or should we determine the reply packet's IP
src
> > address by doing a route lookup for machine A and then using the IP
address
> > of the selected outgoing interface?  Seems to me we should get the same
IP
> > address in either case because packets arriving from machine A and
packets
> > sent to machine A should use the same interface. But could there be a
> > degenerate case (misconfigured routing table) where this isn't true
(packets
> > arrive from machine A on interface 1, but packets sent to machine A
leave
> > interface 2)?
>
>  Awesome question!  All packets originating from the router should consult
the
>  routing table for the source address/outgoing interface.  There is no
>  reason to believe that routes are bidirectional.
>
>  /mc
>


.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: bad tcp cksum?
Date: Mon, 3 Mar 2003 21:04:40 -0800
Lines: 95
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046754282 8731 171.64.15.99 (4 Mar 2003 05:04:42 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4752


> Hi,
>
> I am getting a bad tcp cksum error when I try to
> send  a IP packet. PLease find the tcpdump below.
>
> thanx,
> ceekay

 so ...

> 20:17:04.712907 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
> 			 0001 0800 0604 0001 00e0 8103 fd9e ac18
> 			 4a11 0000 0000 0000 c0a8 8011 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000 0000
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 00e0 8103 fd9e

ARP request from firewall ..

> 20:17:04.713289 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
> 			 0001 0800 0604 0002 7000 000c 0001 c0a8
> 			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000

ARP reply from your router ...

> 20:17:04.932354 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17541, len 48)
> 			 4500 0030 4485 4000 3c06 fda6 ab40 0f6a
> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 00e0 8103 fd9e 0806

TCP packet from firewall to your router (checksum OK)

> 20:17:04.932734 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
> 			 0001 0800 0604 0001 7000 000c 0006 c0a8

 ARP request from your router to the app server

> 20:17:05.026483 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
> 			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
> 			 8149 7000 000c 0006 c0a8 8011 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006

 ARP reply from the app server to your router ..

> 20:17:08.078333 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17542, len 48)
> 			 4500 0030 4486 4000 3c06 fda5 ab40 0f6a
> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806

 TCP packet from your router to the app server... out the wrong interface :-)
 (or at least with the wrong MAC address)

> 20:17:08.078781 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
> 			 0001 0800 0604 0001 7000 000c 0006 c0a8
> 			 8011 0000 0000 0000 c0a8 8149

 another ARP request from your router to the server ... (did you not get the
 previous reply?)

> 20:17:08.080103 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
> 			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
> 			 8149 7000 000c 0006 c0a8 8011 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006

 another ARP reply from the app server..


> 20:17:08.080476 70:0:0:c:0:6 0:e0:81:4:26:d8 ip 62: ceekay-router-3.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [bad tcp cksum 78b9!] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 17541, len 48)
> 			 4500 0030 4485 4000 3b06 7760 c0a8 8148
> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4

 hmm this is kinda funky ...

 Why is the source IP address from your router?

 There is definatly more wrong here than a bad checksum ...

 - you never forward the packet to the app server (the MAC address is wrong or
   it is going out the wrong interface)
 - you are generating? a strange packet with a madified source address and
   sending it to the app server.

 /mc

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: IP src address when sending ICMP echo reply
Date: Mon, 3 Mar 2003 21:08:31 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046754514 8832 171.64.15.99 (4 Mar 2003 05:08:34 GMT)
X-Complaints-To: 
To: Enriko Aryanto 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4753


> According to RFC 792 (ICMP) page 14:
>
> "The address of the source in an echo message will be the destination of the
> echo reply message. To form an echo reply message, the source and
> destination addresses are simply reversed, the type code changed to 0, and
> the checksum recomputed. "
>
> So I guess we should not need to consult the routing table for the source
> address/outgoing interface. In a misconfigured non-bidirectional router, I
> believe sending packets back through their incoming interface will still
> forward them correctly to their destination.
>
> Enriko

 I don't follow your logic.  I don't think it is valid to assume all routs are
 bidirectional .. just because you received a packet in one interface does
 not mean the same interface should be used to send the packet back out...
 I still maintain that the correct way to handle replies is to consult the
 routing table before determining the next hop of packets generated at the
 router.

 /mc

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: bad tcp cksum?
Date: Tue, 4 Mar 2003 05:30:35 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 29
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046755835 9749 171.64.15.112 (4 Mar 2003 05:30:35 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4754

In addition to the valid points raised by Martin...

These appear to be TCP SYN packets with header options to set
MSS.

The TCP checksum covers both the header and the data.  However,
since the IP header total length field indicates 48 bytes, the
TCP datagram has no data (note the header is 28 bytes long).
So, the TCP checksum should cover the TCP header only in that
case.  The TCP datagrams below are identical.  Curious.

I can't fathom the error.  Perhaps the TCP options are confusing
the analysis program???

SteveJ

>20:17:08.078333 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17542, len 48)
>			 4500 0030 4486 4000 3c06 fda5 ab40 0f6a
>			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
>			 7002 60f4 df3b 0000 0101 0402 0204 05b4
>			 0000 0000 0041 0000 0000 ffff ffff ffff
>			 7000 000c 0006 0806

>20:17:08.080476 70:0:0:c:0:6 0:e0:81:4:26:d8 ip 62: ceekay-router-3.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [bad tcp cksum 78b9!] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 17541, len 48)
>			 4500 0030 4485 4000 3b06 7760 c0a8 8148
>			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
>			 7002 60f4 df3b 0000 0101 0402 0204 05b4


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: bad tcp cksum?
Date: Tue, 4 Mar 2003 05:43:38 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 40
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046756618 10385 171.64.15.112 (4 Mar 2003 05:43:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4755

I had forgotten the 12 byte pseudo-header that is also
covered by the TCP checksum.  A mistake in these bytes
could lead to a TCP checksum error.

Pages 15 and 16 of RFC793 discuss this.

SteveJ

Steve Jacobson  wrote:
>In addition to the valid points raised by Martin...
>
>These appear to be TCP SYN packets with header options to set
>MSS.
>
>The TCP checksum covers both the header and the data.  However,
>since the IP header total length field indicates 48 bytes, the
>TCP datagram has no data (note the header is 28 bytes long).
>So, the TCP checksum should cover the TCP header only in that
>case.  The TCP datagrams below are identical.  Curious.
>
>I can't fathom the error.  Perhaps the TCP options are confusing
>the analysis program???
>
>SteveJ
>
>>20:17:08.078333 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17542, len 48)
>>			 4500 0030 4486 4000 3c06 fda5 ab40 0f6a
>>			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
>>			 7002 60f4 df3b 0000 0101 0402 0204 05b4
>>			 0000 0000 0041 0000 0000 ffff ffff ffff
>>			 7000 000c 0006 0806
>
>>20:17:08.080476 70:0:0:c:0:6 0:e0:81:4:26:d8 ip 62: ceekay-router-3.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [bad tcp cksum 78b9!] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 17541, len 48)
>>			 4500 0030 4485 4000 3b06 7760 c0a8 8148
>>			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
>>			 7002 60f4 df3b 0000 0101 0402 0204 05b4
>
>


.

Path: shelby.stanford.edu!saga8.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: bad tcp cksum?
Date: Tue, 4 Mar 2003 05:50:41 +0000 (UTC)
Lines: 103
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga8.stanford.edu
X-Trace: news.Stanford.EDU 1046757041 10591 171.64.15.138 (4 Mar 2003 05:50:41 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4756


> so ...

>> 20:17:04.712907 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
>> 			 0001 0800 0604 0001 00e0 8103 fd9e ac18
>> 			 4a11 0000 0000 0000 c0a8 8011 0000 0000
>> 			 0000 0000 0000 0000 0000 0000 0000 0000
>> 			 0000 0000 0041 0000 0000 ffff ffff ffff
>> 			 00e0 8103 fd9e

>ARP request from firewall ..

>> 20:17:04.713289 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
>> 			 0001 0800 0604 0002 7000 000c 0001 c0a8
>> 			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
>> 			 0000 0000 0000 0000 0000 0000 0000

>ARP reply from your router ...

>> 20:17:04.932354 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17541, len 48)
>> 			 4500 0030 4485 4000 3c06 fda6 ab40 0f6a
>> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
>> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4
>> 			 0000 0000 0041 0000 0000 ffff ffff ffff
>> 			 00e0 8103 fd9e 0806

>TCP packet from firewall to your router (checksum OK)

>> 20:17:04.932734 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
>> 			 0001 0800 0604 0001 7000 000c 0006 c0a8

> ARP request from your router to the app server

>> 20:17:05.026483 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
>> 			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
>> 			 8149 7000 000c 0006 c0a8 8011 0000 0000
>> 			 0000 0000 0000 0000 0000 0000 0000 05b4
>> 			 0000 0000 0041 0000 0000 ffff ffff ffff
>> 			 7000 000c 0006

> ARP reply from the app server to your router ..

>> 20:17:08.078333 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17542, len 48)
>> 			 4500 0030 4486 4000 3c06 fda5 ab40 0f6a
>> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
>> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4
>> 			 0000 0000 0041 0000 0000 ffff ffff ffff
>> 			 7000 000c 0006 0806

> TCP packet from your router to the app server... out the wrong interface :-)
> (or at least with the wrong MAC address)

This is another TCP packet from the firewall right?
different id.


>> 20:17:08.078781 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
>> 			 0001 0800 0604 0001 7000 000c 0006 c0a8
>> 			 8011 0000 0000 0000 c0a8 8149

> another ARP request from your router to the server ... (did you not get the
> previous reply?)

I was not caching it...I fixed it.

>> 20:17:08.080103 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
>> 			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
>> 			 8149 7000 000c 0006 c0a8 8011 0000 0000
>> 			 0000 0000 0000 0000 0000 0000 0000 05b4
>> 			 0000 0000 0041 0000 0000 ffff ffff ffff
>> 			 7000 000c 0006

> another ARP reply from the app server..


>> 20:17:08.080476 70:0:0:c:0:6 0:e0:81:4:26:d8 ip 62: ceekay-router-3.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [bad tcp cksum 78b9!] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 17541, len 48)
>> 			 4500 0030 4485 4000 3b06 7760 c0a8 8148
>> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
>> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4

THIS is the first time I am sending the packet back to the firewall after
completing the packet. and the MAC addr are correct....
so I am all lost and confused :(


one more quick question:
when I get the ARP request the sender's hardware address is nil.
so shud we cache the arp cache only for replies?


> hmm this is kinda funky ...

> Why is the source IP address from your router?

> There is definatly more wrong here than a bad checksum ...

> - you never forward the packet to the app server (the MAC address is wrong or
>   it is going out the wrong interface)
> - you are generating? a strange packet with a madified source address and
>   sending it to the app server.

> /mc

.

Path: shelby.stanford.edu!DB.Stanford.EDU!daswani
From: Neil Daswani 
Newsgroups: su.class.cs244a
Subject: Bad ICMP Checksum from ping?
Date: Mon, 3 Mar 2003 21:54:13 -0800
Lines: 55
Distribution: su
Message-ID: 
NNTP-Posting-Host: db.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046757258 10704 171.64.75.201 (4 Mar 2003 05:54:18 GMT)
X-Complaints-To: 
X-Sender: 
Xref: shelby.stanford.edu su.class.cs244a:4757


I got to the point in hw3 where I am successfully routing all packets
correctly in both directions between clients and the application servers,
and I am currently working on supporting ICMP messages.

However, when I receive ICMP packets generated by issuing a ping command,
the ICMP header checksum that I get sent in the packets is incorrect.  
(Ethereal even says so!)  So I am confused about what is going on... see
the following...

(the following is a dump of an IP packet that contains an ICMP message
received from a "ping daswani-router-1" command that I issued...)

*** -> Received packet is IP. 
7000 000f 0001 00e0 8103 fd9e 0800 4500 
0054 afd4 4000 fb01 d48e ab40 0f48 c0a8 
8014 0800 248a 35d5 0003 3e64 3b38 0000 
38fe 0809 0a0b 0c0d 0e0f 1011 1213 1415 
1617 1819 1a1b 1c1d 1e1f 2021 2223 2425 
2627 2829 2a2b 2c2d 2e2f 3031 3233 3435 
3637 
IPPacket: (Src:171.64.15.72,Dst:192.168.128.20,TTL:251,TotalLen:84)
*** -> IP Checksum is OK.

*** -> Packet is ICMP.
4500 0054 afd4 4000 fb01 d48e ab40 0f48
c0a8 8014 0800 248a 35d5 0003 3e64 3b38
0000 38fe 0809 0a0b 0c0d 0e0f 1011 1213
1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
3435 3637

before checksum calc:0800 0000
isICMPCRCOk: old_cksm=9354 (248a); new_cksm=63487 (f7ff)

Etherreal says that 0x248a is incorrect as the checksum, and that it
should be 0x5ac1.  On top of this, my own checksum calcuation comes up
with 0xf7ff!  So I am quite confused! :)  I used the checksum calculation
code from Peterson and Davie.  I am using the same calculate checksum code
that I use for the IP header checksum, and it successfully verifies the IP
checksum.  (And, yes, I do zero out the checksum fields before doing the
checksum computations for both the IP and ICMP checksum.)

Does anyone (especially any of the TA's) have an idea as to why this might
be happening?

Thanks,

-- Neil






.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: bad tcp cksum?
Date: Mon, 3 Mar 2003 22:01:55 -0800
Lines: 70
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046757718 10935 171.64.15.115 (4 Mar 2003 06:01:58 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4758

>
> >> 20:17:08.078333 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 17542, len 48)
> >> 			 4500 0030 4486 4000 3c06 fda5 ab40 0f6a
> >> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
> >> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4
> >> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> >> 			 7000 000c 0006 0806
>
> > TCP packet from your router to the app server... out the wrong interface :-)
> > (or at least with the wrong MAC address)
>
> This is another TCP packet from the firewall right?
> different id.

 Yes, I'm a moron .. my fault, sorry.


> >> 20:17:08.078781 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
> >> 			 0001 0800 0604 0001 7000 000c 0006 c0a8
> >> 			 8011 0000 0000 0000 c0a8 8149
>
> > another ARP request from your router to the server ... (did you not get the
> > previous reply?)
>
> I was not caching it...I fixed it.

 yay.

>
> >> 20:17:08.080103 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
> >> 			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
> >> 			 8149 7000 000c 0006 c0a8 8011 0000 0000
> >> 			 0000 0000 0000 0000 0000 0000 0000 05b4
> >> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> >> 			 7000 000c 0006
>
> > another ARP reply from the app server..
>
>
> >> 20:17:08.080476 70:0:0:c:0:6 0:e0:81:4:26:d8 ip 62: ceekay-router-3.Stanford.EDU.58927 > ftp-ceekay.Stanford.EDU.ftp: S [bad tcp cksum 78b9!] 2677129340:2677129340(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 17541, len 48)
> >> 			 4500 0030 4485 4000 3b06 7760 c0a8 8148
> >> 			 c0a8 8149 e62f 0015 9f91 c07c 0000 0000
> >> 			 7002 60f4 df3b 0000 0101 0402 0204 05b4
>
> THIS is the first time I am sending the packet back to the firewall after

  actually it is going to the app server, right?

> completing the packet. and the MAC addr are correct....
> so I am all lost and confused :(

  hmm .. your source address is still incorrect .. you should never modify the
  source IP address of the IP packet .. it looks like you are writing in your
  own IP as the source .. on top of that your checksum is bad.  Correct these
  two errors and it should be OK.

>
> one more quick question:
> when I get the ARP request the sender's hardware address is nil.
> so shud we cache the arp cache only for replies?

 It is?  this is not the case in the tcpdump trace you sent ..

 20:17:04.712907 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU

 :-/ anways .. yes you only need to cache from information received in ARP replies.

 /mc


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Bad ICMP Checksum from ping?
Date: Mon, 3 Mar 2003 22:24:27 -0800
Lines: 70
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046759068 11695 171.64.15.115 (4 Mar 2003 06:24:28 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4759



  You are saying that the ICMP packets generated by the elaines have an
  incorrect checksum? :-/ That's strange.. I wonder if it is because the
  snaplen for the packets is too small and you don't have the complete packet
  (though with a total ip length of 84 this shouldn't be the case still, you might
  want to increase the snaplen (sr_router.h PACKET_DUMP_SIZE) )  I am having no
  problems pinging from the elaines to the router and other machines on the
  network (traceroute too!).

  /mc


>
> I got to the point in hw3 where I am successfully routing all packets
> correctly in both directions between clients and the application servers,
> and I am currently working on supporting ICMP messages.
>
> However, when I receive ICMP packets generated by issuing a ping command,
> the ICMP header checksum that I get sent in the packets is incorrect.
> (Ethereal even says so!)  So I am confused about what is going on... see
> the following...
>
> (the following is a dump of an IP packet that contains an ICMP message
> received from a "ping daswani-router-1" command that I issued...)
>
> *** -> Received packet is IP.
> 7000 000f 0001 00e0 8103 fd9e 0800 4500
> 0054 afd4 4000 fb01 d48e ab40 0f48 c0a8
> 8014 0800 248a 35d5 0003 3e64 3b38 0000
> 38fe 0809 0a0b 0c0d 0e0f 1011 1213 1415
> 1617 1819 1a1b 1c1d 1e1f 2021 2223 2425
> 2627 2829 2a2b 2c2d 2e2f 3031 3233 3435
> 3637
> IPPacket: (Src:171.64.15.72,Dst:192.168.128.20,TTL:251,TotalLen:84)
> *** -> IP Checksum is OK.
>
> *** -> Packet is ICMP.
> 4500 0054 afd4 4000 fb01 d48e ab40 0f48
> c0a8 8014 0800 248a 35d5 0003 3e64 3b38
> 0000 38fe 0809 0a0b 0c0d 0e0f 1011 1213
> 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
> 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
> 3435 3637
>
> before checksum calc:0800 0000
> isICMPCRCOk: old_cksm=9354 (248a); new_cksm=63487 (f7ff)
>
> Etherreal says that 0x248a is incorrect as the checksum, and that it
> should be 0x5ac1.  On top of this, my own checksum calcuation comes up
> with 0xf7ff!  So I am quite confused! :)  I used the checksum calculation
> code from Peterson and Davie.  I am using the same calculate checksum code
> that I use for the IP header checksum, and it successfully verifies the IP
> checksum.  (And, yes, I do zero out the checksum fields before doing the
> checksum computations for both the IP and ICMP checksum.)
>
> Does anyone (especially any of the TA's) have an idea as to why this might
> be happening?
>
> Thanks,
>
> -- Neil
>
>
>
>
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Susan Noreen Shepard 
Newsgroups: su.class.cs244a
Subject: UMR/ABR in sr_vns_comm.s code?
Date: Tue, 4 Mar 2003 06:31:29 +0000 (UTC)
Lines: 52
Distribution: su
Message-ID: 
NNTP-Posting-Host: talon2.stanford.edu
X-Trace: news.Stanford.EDU 1046759489 11893 171.64.12.146 (4 Mar 2003 06:31:30 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4760

Hi,
I've checked the newsgroup and haven't found an answer, but I'm getting
UMR and ABR when my packets are logged (in code in sr_vns_comm.c and
sr_dumper.c).  I updated my sr_vns_comm.c file just a few minutes ago and
cleaned and rebuilt.  I still am getting the errors.

ABR: Array bounds read:
  * This is occurring while in:
        memcpy         [rtlib.o]
        _memcpy        [rtlib.o]
        _fwrite_unlocked [libc.so.1]
        fwrite         [libc.so.1]
        sr_dump        [sr_dumper.c:63]
        sr_log_packet  [sr_vns_comm.c:368]
  * Reading 84 bytes from 0xa6fd0 in the heap (24 bytes at 0xa700c illegal).
  * Address 0xa6fd0 is 24 bytes into a malloc'd block at 0xa6fb8 of 84 bytes.
  * This block was allocated from:
        malloc         [rtlib.o]
        sr_read_from_server [sr_vns_comm.c:219]
        main           [sr_main.c:146]
        _start         [crt1.o]

****  Purify instrumented sr.purify (pid 3092)  ****
UMR: Uninitialized memory read:
  * This is occurring while in:
        _write         [libc.so.1]
        _xflsbuf       [libc.so.1]
        _fflush_u      [libc.so.1]
        fflush         [libc.so.1]
        sr_log_packet  [sr_vns_comm.c:369]
        sr_read_from_server [sr_vns_comm.c:256]
  * Reading 124 bytes from 0x9f794 in the heap (24 bytes at 0x9f7f8 uninit).
  * Address 0x9f794 is 4 bytes into a malloc'd block at 0x9f790 of 8200 bytes.
  * This block was allocated from:
        malloc         [rtlib.o]
        _findbuf       [libc.so.1]
        _wrtchk        [libc.so.1]
        _fwrite_unlocked [libc.so.1]
        fwrite         [libc.so.1]
        sf_write_header [sr_dumper.c:21]

Are we suppose to ignore these as it's not our code? Or perhaps there's
something I should be doing that I'm not?  I got this
output by running `sr.purify -t 70 -l packets.log`


Unrelated but probably worth fixing:  I noticed that in
in sr_read_from_server(), line 256 calls sr_log_packet, using
sr_pkt->mLen which is in netbyte order.  A similar call in sr_send_packet()
passes len in hostbyte order, and the code in sr_log_packet() and
sr_dump() suggest that sr_log_packet() expects len in hostbyte order. 

.

Path: shelby.stanford.edu!saga8.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: bad tcp cksum?
Date: Tue, 4 Mar 2003 06:32:32 +0000 (UTC)
Lines: 109
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: saga8.stanford.edu
X-Trace: news.Stanford.EDU 1046759552 11933 171.64.15.138 (4 Mar 2003 06:32:32 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4761

ok....itz better now. (I hope sooo...) ;)

but I have reached the dead-end now.

my packet reaches the ftp server and the ftp server tries to get to
my router-3 but never reaches?

am I missig something? should we run 3 routers for each interface
or just one instance of the sr server is enough?

tcpdump attached below:

-----------------------------------

22:22:03.094498 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0000
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e
22:22:03.094828 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
			 0001 0800 0604 0002 7000 000c 0001 c0a8
			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
22:22:03.194062 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 3603, len 48)
			 4500 0030 0e13 4000 3c06 3419 ab40 0f6a
			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
			 7002 60f4 1512 0000 0101 0402 0204 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e 0806
22:22:03.194441 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0006 c0a8
			 8011 0000 0000 0000 c0a8 8149
22:22:03.292318 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
			 8149 7000 000c 0006 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006
22:22:06.457311 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 3604, len 48)
			 4500 0030 0e14 4000 3c06 3418 ab40 0f6a
			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
			 7002 60f4 1512 0000 0101 0402 0204 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
22:22:06.457696 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 62: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 3604, len 48)
			 4500 0030 0e14 4000 3b06 3518 ab40 0f6a
			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
			 7002 60f4 1512 0000 0101 0402 0204 05b4
22:22:07.356111 0:e0:81:4:26:d8 Broadcast arp 84: arp who-has ceekay-router-3.Stanford.EDU tell ftp-ceekay.Stanford.EDU
			 0001 0800 0604 0001 00e0 8104 26d8 c0a8
			 8149 0000 0000 0000 c0a8 8148 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006
22:22:07.356463 70:0:0:c:0:6 0:e0:81:4:26:d8 arp 60: arp reply ceekay-router-3.Stanford.EDU is-at 70:0:0:c:0:6
			 0001 0800 0604 0002 7000 000c 0006 c0a8
			 8148 00e0 8104 26d8 c0a8 8149 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
22:22:07.451896 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e2c c0a8 8149
			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
			 7012 16d0 805b 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
22:22:10.056972 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e2c c0a8 8149
			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
			 7012 16d0 805b 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
22:22:13.262344 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 3605, len 48)
			 4500 0030 0e15 4000 3c06 3417 ab40 0f6a
			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
			 7002 60f4 1512 0000 0101 0402 0204 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
22:22:13.262706 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 62: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 3605, len 48)
			 4500 0030 0e15 4000 3b06 3517 ab40 0f6a
			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
			 7002 60f4 1512 0000 0101 0402 0204 05b4
22:22:14.307796 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e2c c0a8 8149
			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
			 7012 16d0 805b 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
22:22:16.072535 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e2c c0a8 8149
			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
			 7012 16d0 805b 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
22:22:26.707485 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 10337, len 48)
			 4500 0030 2861 4000 3c06 19cb ab40 0f6a
			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
			 7002 60f4 1512 0000 0101 0402 0204 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
22:22:26.707892 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 62: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 10337, len 48)
			 4500 0030 2861 4000 3b06 1acb ab40 0f6a
			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
			 7002 60f4 1512 0000 0101 0402 0204 05b4
22:22:27.631343 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e2c c0a8 8149
			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
			 7012 16d0 805b 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: UMR/ABR in sr_vns_comm.s code?
Date: Mon, 3 Mar 2003 22:40:43 -0800
Lines: 63
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046760045 12225 171.64.15.115 (4 Mar 2003 06:40:45 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4762


> Hi,
> I've checked the newsgroup and haven't found an answer, but I'm getting
> UMR and ABR when my packets are logged (in code in sr_vns_comm.c and
> sr_dumper.c).  I updated my sr_vns_comm.c file just a few minutes ago and
> cleaned and rebuilt.  I still am getting the errors.
>
> ABR: Array bounds read:
>   * This is occurring while in:
>         memcpy         [rtlib.o]
>         _memcpy        [rtlib.o]
>         _fwrite_unlocked [libc.so.1]
>         fwrite         [libc.so.1]
>         sr_dump        [sr_dumper.c:63]
>         sr_log_packet  [sr_vns_comm.c:368]
>   * Reading 84 bytes from 0xa6fd0 in the heap (24 bytes at 0xa700c illegal).
>   * Address 0xa6fd0 is 24 bytes into a malloc'd block at 0xa6fb8 of 84 bytes.
>   * This block was allocated from:
>         malloc         [rtlib.o]
>         sr_read_from_server [sr_vns_comm.c:219]
>         main           [sr_main.c:146]
>         _start         [crt1.o]

 I wonder if this has to do with the bad ICMP checksum .... :-/

> ****  Purify instrumented sr.purify (pid 3092)  ****
> UMR: Uninitialized memory read:
>   * This is occurring while in:
>         _write         [libc.so.1]
>         _xflsbuf       [libc.so.1]
>         _fflush_u      [libc.so.1]
>         fflush         [libc.so.1]
>         sr_log_packet  [sr_vns_comm.c:369]
>         sr_read_from_server [sr_vns_comm.c:256]
>   * Reading 124 bytes from 0x9f794 in the heap (24 bytes at 0x9f7f8 uninit).
>   * Address 0x9f794 is 4 bytes into a malloc'd block at 0x9f790 of 8200 bytes.
>   * This block was allocated from:
>         malloc         [rtlib.o]
>         _findbuf       [libc.so.1]
>         _wrtchk        [libc.so.1]
>         _fwrite_unlocked [libc.so.1]
>         fwrite         [libc.so.1]
>         sf_write_header [sr_dumper.c:21]
>
> Are we suppose to ignore these as it's not our code? Or perhaps there's
> something I should be doing that I'm not?  I got this
> output by running `sr.purify -t 70 -l packets.log`

 go ahead and ignore this for now .. thanks for the post however.

>
>
> Unrelated but probably worth fixing:  I noticed that in
> in sr_read_from_server(), line 256 calls sr_log_packet, using
> sr_pkt->mLen which is in netbyte order.  A similar call in sr_send_packet()
> passes len in hostbyte order, and the code in sr_log_packet() and
> sr_dump() suggest that sr_log_packet() expects len in hostbyte order.

 doh! good catch .. I'll fix and update .. though fortunately this shouldn't
 affect developers on the elaines ... thanks!

 /mc

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: bad tcp cksum?
Date: Mon, 3 Mar 2003 22:43:30 -0800
Lines: 126
Distribution: su
Message-ID: 
References: 
 
  
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046760213 12340 171.64.15.115 (4 Mar 2003 06:43:33 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4763


> ok....itz better now. (I hope sooo...) ;)
>
> but I have reached the dead-end now.
>
> my packet reaches the ftp server and the ftp server tries to get to
> my router-3 but never reaches?
>
> am I missig something? should we run 3 routers for each interface
> or just one instance of the sr server is enough?

 One instance is all you need... unless I am mistaken .. your router is getting
 packets from the ftp server ...

 22:22:14.307796 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86:
 ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok]
 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF)
 (ttl 64, id 0, len 48)

 Since your router logged it, it must have received it however it does not look
 like you are forwarding it on to the firewall.

 /mc


> tcpdump attached below:
>
> -----------------------------------
>
> 22:22:03.094498 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
> 			 0001 0800 0604 0001 00e0 8103 fd9e ac18
> 			 4a11 0000 0000 0000 c0a8 8011 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000 0000
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 00e0 8103 fd9e
> 22:22:03.094828 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
> 			 0001 0800 0604 0002 7000 000c 0001 c0a8
> 			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000
> 22:22:03.194062 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 3603, len 48)
> 			 4500 0030 0e13 4000 3c06 3419 ab40 0f6a
> 			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
> 			 7002 60f4 1512 0000 0101 0402 0204 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 00e0 8103 fd9e 0806
> 22:22:03.194441 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-1.Stanford.EDU
> 			 0001 0800 0604 0001 7000 000c 0006 c0a8
> 			 8011 0000 0000 0000 c0a8 8149
> 22:22:03.292318 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
> 			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
> 			 8149 7000 000c 0006 c0a8 8011 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006
> 22:22:06.457311 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 3604, len 48)
> 			 4500 0030 0e14 4000 3c06 3418 ab40 0f6a
> 			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
> 			 7002 60f4 1512 0000 0101 0402 0204 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
> 22:22:06.457696 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 62: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 3604, len 48)
> 			 4500 0030 0e14 4000 3b06 3518 ab40 0f6a
> 			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
> 			 7002 60f4 1512 0000 0101 0402 0204 05b4
> 22:22:07.356111 0:e0:81:4:26:d8 Broadcast arp 84: arp who-has ceekay-router-3.Stanford.EDU tell ftp-ceekay.Stanford.EDU
> 			 0001 0800 0604 0001 00e0 8104 26d8 c0a8
> 			 8149 0000 0000 0000 c0a8 8148 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006
> 22:22:07.356463 70:0:0:c:0:6 0:e0:81:4:26:d8 arp 60: arp reply ceekay-router-3.Stanford.EDU is-at 70:0:0:c:0:6
> 			 0001 0800 0604 0002 7000 000c 0006 c0a8
> 			 8148 00e0 8104 26d8 c0a8 8149 0000 0000
> 			 0000 0000 0000 0000 0000 0000 0000
> 22:22:07.451896 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
> 			 4500 0030 0000 4000 4006 3e2c c0a8 8149
> 			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
> 			 7012 16d0 805b 0000 0204 05b4 0101 0402
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
> 22:22:10.056972 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
> 			 4500 0030 0000 4000 4006 3e2c c0a8 8149
> 			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
> 			 7012 16d0 805b 0000 0204 05b4 0101 0402
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
> 22:22:13.262344 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 3605, len 48)
> 			 4500 0030 0e15 4000 3c06 3417 ab40 0f6a
> 			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
> 			 7002 60f4 1512 0000 0101 0402 0204 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
> 22:22:13.262706 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 62: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 3605, len 48)
> 			 4500 0030 0e15 4000 3b06 3517 ab40 0f6a
> 			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
> 			 7002 60f4 1512 0000 0101 0402 0204 05b4
> 22:22:14.307796 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
> 			 4500 0030 0000 4000 4006 3e2c c0a8 8149
> 			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
> 			 7012 16d0 805b 0000 0204 05b4 0101 0402
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
> 22:22:16.072535 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
> 			 4500 0030 0000 4000 4006 3e2c c0a8 8149
> 			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
> 			 7012 16d0 805b 0000 0204 05b4 0101 0402
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
> 22:22:26.707485 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 10337, len 48)
> 			 4500 0030 2861 4000 3c06 19cb ab40 0f6a
> 			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
> 			 7002 60f4 1512 0000 0101 0402 0204 05b4
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
> 22:22:26.707892 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 62: elaine31.Stanford.EDU.59238 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 263592267:263592267(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 10337, len 48)
> 			 4500 0030 2861 4000 3b06 1acb ab40 0f6a
> 			 c0a8 8149 e766 0015 0fb6 194b 0000 0000
> 			 7002 60f4 1512 0000 0101 0402 0204 05b4
> 22:22:27.631343 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine31.Stanford.EDU.59238: S [tcp sum ok] 3823696608:3823696608(0) ack 263592268 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
> 			 4500 0030 0000 4000 4006 3e2c c0a8 8149
> 			 ab40 0f6a 0015 e766 e3e8 fae0 0fb6 194c
> 			 7012 16d0 805b 0000 0204 05b4 0101 0402
> 			 0000 0000 0041 0000 0000 ffff ffff ffff
> 			 7000 000c 0006 0806
>

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: late night office hours
Date: Mon, 3 Mar 2003 22:46:13 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046760374 12383 171.64.15.115 (4 Mar 2003 06:46:14 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4764


  I am going to be in my office until midnight or so, so if anyone is having
  technical difficulties please feel free to give me a call.

  (925) 423 - 8864.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: Sheila Patel 
Newsgroups: su.class.cs244a
Subject: icmp host unreachable
Date: Mon, 03 Mar 2003 22:55:23 -0800
Lines: 73
Distribution: su
Message-ID: 
NNTP-Posting-Host: allante.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046760873 12629 128.12.173.56 (4 Mar 2003 06:54:33 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4765

Hi,

My ICMP port unreachable seems to work fine; however, the ICMP host 
unreachable does not.  Similar to what Martin mentioned in a previous 
post, I ignore incoming ARP replies in order to test this.

The difference between the two ICMP messages I send is the ICMP code 
field (3 for port unreachable versus 1 for host unreachable).  I tried 
setting the code field to 3 (port unreachable) when I want to send the 
ICMP host unreachable as the ARP retries have timed out, and oddly this 
works (eventhough I get a "Connection refused" versus "no route to 
host", the telnet to www-sheilap on port 80 still exits).  But, when I 
set the code field correctly to 1 in this case, my telnet to port 80 on 
www-sheilap doesn't exit.

I also ran tcpdump on my Linux machine to an unreachable machine in 
order to compare the dumps, but I didn't find anything there either.

Any suggestions on how to find/solve the problem would be appreciated.

Thanks,
Sheila


The tcpdump from ICMP Port unreachable (working)
------------------------------------------------

INCOMING SYN TO SHEILAP-ROUTER-1:

21:47:02.212044 171.64.15.114.61669 > 192.168.128.74.80: S [tcp sum ok] 
1467439760:1467439760(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) [tos 
0x10]  (ttl 60, id 44796, len 48)
                          4510 0030 aefc 4000 3c06 9416 ab40 0f72
                          c0a8 804a f0e5 0050 5777 5a90 0000 0000
                          7002 60f4 8348 0000 0101 0402 0204 05b4
                          0000 0000 0260 0000 0000 0002 cac8 0000
                          0000 0000 0000 0000

REPLY FROM ROUTER:
21:47:02.212431 192.168.128.74 > 171.64.15.114: icmp: 192.168.128.74 tcp 
port 80 unreachable for 171.64.15.114.61669 > 192.168.128.74.80: [|tcp] 
(DF) [tos 0x10]  (ttl 60, id 44796, len 48) (ttl 255, id 0, len 56)
                          4500 0038 0000 0000 ff01 c01f c0a8 804a
                          ab40 0f72 0303 59bf 0000 0000 4510 0030
                          aefc 4000 3c06 9416 ab40 0f72 c0a8 804a
                          f0e5 0050 5777 5a90


The tcpdump from ICMP Host unreachable (not working)
----------------------------------------------------

INCOMING SYN FOR WWW-SHEILAP:

21:45:17.561596 171.64.15.114.61666 > 192.168.128.242.80: S [tcp sum ok] 
1441381559:1441381559(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) [tos 
0x10]  (ttl 60,
id 13603, len 48)
                          4510 0030 3523 4000 3c06 0d48 ab40 0f72
                          c0a8 80f2 f0e2 0050 55e9 bcb7 0000 0000
                          7002 60f4 220a 0000 0101 0402 0204 05b4
                          0000 0000 0049 0000 0000 0000 0042 0000
                          0004 6574 6830 0000

REPLY FROM ROUTER:
21:45:20.874442 192.168.128.74 > 171.64.15.114: icmp: host 
192.168.128.242 unreachable for 171.64.15.114.61666 > 
192.168.128.242.80: [|tcp] (DF) [tos 0x10]  (ttl 59, id 13603, len 48) 
(ttl 255, id 0, len 56)
                          4500 0038 0000 0000 ff01 c01f c0a8 804a
                          ab40 0f72 0301 f92a 0000 0000 4510 0030
                          3523 4000 3b06 0e48 ab40 0f72 c0a8 80f2
                          f0e2 0050 55e9 bcb7

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: icmp host unreachable
Date: Mon, 3 Mar 2003 23:29:25 -0800
Lines: 92
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046762967 13737 171.64.15.115 (4 Mar 2003 07:29:27 GMT)
X-Complaints-To: 
To: Sheila Patel 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4766


> Hi,
>
> My ICMP port unreachable seems to work fine; however, the ICMP host
> unreachable does not.  Similar to what Martin mentioned in a previous
> post, I ignore incoming ARP replies in order to test this.
>
> The difference between the two ICMP messages I send is the ICMP code
> field (3 for port unreachable versus 1 for host unreachable).  I tried
> setting the code field to 3 (port unreachable) when I want to send the
> ICMP host unreachable as the ARP retries have timed out, and oddly this
> works (eventhough I get a "Connection refused" versus "no route to
> host", the telnet to www-sheilap on port 80 still exits).  But, when I
> set the code field correctly to 1 in this case, my telnet to port 80 on
> www-sheilap doesn't exit.
>
> I also ran tcpdump on my Linux machine to an unreachable machine in
> order to compare the dumps, but I didn't find anything there either.

 I don't understand what you mean here ... "rand tcpdump on my Linux machine to
 an unreachable machine" does that mean you tried to telnet to the machine
 while running tcpdump?

 ping (and fping) will both tell you if a host unreachable was receieved ( and
 who sent it ...)

 example (from fping):

 ICMP Host Unreachable from 192.168.223.31 for ICMP Echo sent to 192.168.223.230

 Perhaps use ping to verify that your ICMP host unreachable code is working.

 /mc


> Any suggestions on how to find/solve the problem would be appreciated.
>
> Thanks,
> Sheila
>
>
> The tcpdump from ICMP Port unreachable (working)
> ------------------------------------------------
>
> INCOMING SYN TO SHEILAP-ROUTER-1:
>
> 21:47:02.212044 171.64.15.114.61669 > 192.168.128.74.80: S [tcp sum ok]
> 1467439760:1467439760(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) [tos
> 0x10]  (ttl 60, id 44796, len 48)
>                           4510 0030 aefc 4000 3c06 9416 ab40 0f72
>                           c0a8 804a f0e5 0050 5777 5a90 0000 0000
>                           7002 60f4 8348 0000 0101 0402 0204 05b4
>                           0000 0000 0260 0000 0000 0002 cac8 0000
>                           0000 0000 0000 0000
>
> REPLY FROM ROUTER:
> 21:47:02.212431 192.168.128.74 > 171.64.15.114: icmp: 192.168.128.74 tcp
> port 80 unreachable for 171.64.15.114.61669 > 192.168.128.74.80: [|tcp]
> (DF) [tos 0x10]  (ttl 60, id 44796, len 48) (ttl 255, id 0, len 56)
>                           4500 0038 0000 0000 ff01 c01f c0a8 804a
>                           ab40 0f72 0303 59bf 0000 0000 4510 0030
>                           aefc 4000 3c06 9416 ab40 0f72 c0a8 804a
>                           f0e5 0050 5777 5a90
>
>
> The tcpdump from ICMP Host unreachable (not working)
> ----------------------------------------------------
>
> INCOMING SYN FOR WWW-SHEILAP:
>
> 21:45:17.561596 171.64.15.114.61666 > 192.168.128.242.80: S [tcp sum ok]
> 1441381559:1441381559(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) [tos
> 0x10]  (ttl 60,
> id 13603, len 48)
>                           4510 0030 3523 4000 3c06 0d48 ab40 0f72
>                           c0a8 80f2 f0e2 0050 55e9 bcb7 0000 0000
>                           7002 60f4 220a 0000 0101 0402 0204 05b4
>                           0000 0000 0049 0000 0000 0000 0042 0000
>                           0004 6574 6830 0000
>
> REPLY FROM ROUTER:
> 21:45:20.874442 192.168.128.74 > 171.64.15.114: icmp: host
> 192.168.128.242 unreachable for 171.64.15.114.61666 >
> 192.168.128.242.80: [|tcp] (DF) [tos 0x10]  (ttl 59, id 13603, len 48)
> (ttl 255, id 0, len 56)
>                           4500 0038 0000 0000 ff01 c01f c0a8 804a
>                           ab40 0f72 0301 f92a 0000 0000 4510 0030
>                           3523 4000 3b06 0e48 ab40 0f72 c0a8 80f2
>                           f0e2 0050 55e9 bcb7
>
>

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: ARP header structure field alignment?
Date: Tue, 4 Mar 2003 00:14:44 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046765685 16001 171.64.15.69 (4 Mar 2003 08:14:45 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4767

I did read about the problems possibly caused by byte alignment in the ip
header, which seemed to be fixed with __attribute__ ((packed)) declaration
of the struct.

The sr_arphdr struct is indeed declared with packed keyword. But I am
having seg fault when accessing the "ar_tip" field. All the other fields
such as ar_sip, ar_sha, sr_tha, all turned out to be accessible.

Must be something really simple. What is it?

J.

.

Path: shelby.stanford.edu!saga16.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: Echo Request Reply problem
Date: Tue, 4 Mar 2003 00:40:36 -0800
Lines: 51
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046767238 16651 171.64.15.146 (4 Mar 2003 08:40:38 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4768

Hi,

I have the following problem in the Echo reply. I am sending all the
replies properly, thge correct sequence numbers and other matching fields,
Ethereal shows all the proper sequence of requests and replie, however the
I dont the replies on the machine from where I pinged. Even the tcpdump
looks allright. If ethereal is catching them means I am sending them on
the network, however I am not receving them at the machine from where I
pinged????.

relevent portion of TCPDUMP

20:10:03.042626 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
milaps-router-1.St
anford.EDU tell vr-firewall.Stanford.EDU
                         0001 0800 0604 0001 00e0 8103 fd9e ac18
                         4a11 0000 0000 0000 c0a8 8034 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 0000
                         0000 0000 0031 0000 0000 0001 0800 0604
                         0001 00e0 8103
20:10:03.043232 70:0:0:2f:0:1 0:e0:81:3:fd:9e arp 42: arp reply
milaps-router-1.
Stanford.EDU is-at 70:0:0:2f:0:1
                         0001 0800 0604 0002 7000 002f 0001 c0a8
                         8034 00e0 8103 fd9e ac18 4a11
20:10:03.045828 0:e0:81:3:fd:9e 70:0:0:2f:0:1 ip 96: truncated-ip - 2
bytes miss
ing!elaine12.Stanford.EDU > milaps-router-1.Stanford.EDU: icmp: echo
request (DF
) (ttl 251, id 4018, len 84)
                         4500 0054 0fb2 4000 fb01 748c ab40 0f4d
                         c0a8 8034 0800 bffe 57de 0000 3e64 271b
                         0000 8fa0 0809 0a0b 0c0d 0e0f 1011 1213
                         1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
                         2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
                         3435
20:10:03.046419 70:0:0:2f:0:1 0:e0:81:3:fd:9e ip 96: truncated-ip - 2
bytes miss
ing!milaps-router-1.Stanford.EDU > elaine12.Stanford.EDU: icmp: echo reply
(DF)
(ttl 250, id 4018, len 84)
                         4500 0054 0fb2 4000 fa01 758c c0a8 8034
                         ab40 0f4d 0000 326b 57de 0000 3e64 271b
                         0000 8fa0 0809 0a0b 0c0d 0e0f 1011 1213
                         1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
                         2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
                         3435


Milap

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: ARP header structure field alignment?
Date: Tue, 4 Mar 2003 08:50:43 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1046767843 16872 171.64.15.112 (4 Mar 2003 08:50:43 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4769

ar_tip is the last field of the ARP packet.  Alignment
shouldn't be an issue.  I wonder if the buffer it's stored
in is not declared to be large enough?

SteveJ

In article 
Jichun Zhu   wrote:
>I did read about the problems possibly caused by byte alignment in the ip
>header, which seemed to be fixed with __attribute__ ((packed)) declaration
>of the struct.
>
>The sr_arphdr struct is indeed declared with packed keyword. But I am
>having seg fault when accessing the "ar_tip" field. All the other fields
>such as ar_sip, ar_sha, sr_tha, all turned out to be accessible.
>
>Must be something really simple. What is it?
>
>J.
>


.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: ARP header structure field alignment?
Date: Tue, 4 Mar 2003 01:23:06 -0800
Lines: 49
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046769788 17696 171.64.15.69 (4 Mar 2003 09:23:08 GMT)
X-Complaints-To: 
To: Steve Jacobson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4770

This is what I did,

I got a (uint8_t *packet).

struct sr_ethernet_hdr *header = (struct sr_ethernet_hdr *)packet;

This allowed me to access the fields in the ethernet header, and we
learned that this is an ARP packet. Then

struct sr_arphdr *arpheader = (struct sr_arphdr *) (header + 1);

The arpheader pointer skips the ethernet header points to the beginning of
the ARP header that is wrapped in the ethernet packet, and allows me to
access the ARP header fields.

So here I am not doing any memory copy or allocation. Just pointer
arithmetic.

Puzzling...

J.


On Tue, 4 Mar 2003, Steve Jacobson wrote:

> ar_tip is the last field of the ARP packet.  Alignment
> shouldn't be an issue.  I wonder if the buffer it's stored
> in is not declared to be large enough?
>
> SteveJ
>
> In article 
> Jichun Zhu   wrote:
> >I did read about the problems possibly caused by byte alignment in the ip
> >header, which seemed to be fixed with __attribute__ ((packed)) declaration
> >of the struct.
> >
> >The sr_arphdr struct is indeed declared with packed keyword. But I am
> >having seg fault when accessing the "ar_tip" field. All the other fields
> >such as ar_sip, ar_sha, sr_tha, all turned out to be accessible.
> >
> >Must be something really simple. What is it?
> >
> >J.
> >
>
>
>

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: ARP header structure field alignment?
Date: Tue, 4 Mar 2003 01:37:22 -0800
Lines: 74
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046770644 17994 171.64.15.69 (4 Mar 2003 09:37:24 GMT)
X-Complaints-To: 
To: Steve Jacobson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4771

It turns out, the ar_tip field was access correctly. The problem occurred
when I was trying to print it out using

printf("The target IP is %s.\n",
	inet_ntoa(*((struct in_addr *)(&(arphdr->ar_tip)))));

For some reason, it gave me seg fault. But exactly the same code worked on
ar_sip field.

Then I turned to

printf("The target IP is %x.\n", arphdr->ar_tip);

It gave me the right Hex digits, verified with ethereal output.

Still feeling puzzled.

J.



On Tue, 4 Mar 2003, Jichun Zhu wrote:

> This is what I did,
>
> I got a (uint8_t *packet).
>
> struct sr_ethernet_hdr *header = (struct sr_ethernet_hdr *)packet;
>
> This allowed me to access the fields in the ethernet header, and we
> learned that this is an ARP packet. Then
>
> struct sr_arphdr *arpheader = (struct sr_arphdr *) (header + 1);
>
> The arpheader pointer skips the ethernet header points to the beginning of
> the ARP header that is wrapped in the ethernet packet, and allows me to
> access the ARP header fields.
>
> So here I am not doing any memory copy or allocation. Just pointer
> arithmetic.
>
> Puzzling...
>
> J.
>
>
> On Tue, 4 Mar 2003, Steve Jacobson wrote:
>
> > ar_tip is the last field of the ARP packet.  Alignment
> > shouldn't be an issue.  I wonder if the buffer it's stored
> > in is not declared to be large enough?
> >
> > SteveJ
> >
> > In article 
> > Jichun Zhu   wrote:
> > >I did read about the problems possibly caused by byte alignment in the ip
> > >header, which seemed to be fixed with __attribute__ ((packed)) declaration
> > >of the struct.
> > >
> > >The sr_arphdr struct is indeed declared with packed keyword. But I am
> > >having seg fault when accessing the "ar_tip" field. All the other fields
> > >such as ar_sip, ar_sha, sr_tha, all turned out to be accessible.
> > >
> > >Must be something really simple. What is it?
> > >
> > >J.
> > >
> >
> >
> >
>
>

.

Path: shelby.stanford.edu!DB.Stanford.EDU!daswani
From: Neil Daswani 
Newsgroups: su.class.cs244a
Subject: Re: icmp host unreachable
Date: Tue, 4 Mar 2003 04:09:44 -0800
Lines: 93
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: db.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046779792 22724 171.64.75.201 (4 Mar 2003 12:09:52 GMT)
X-Complaints-To: 
To: Sheila Patel 
X-Sender: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4772


I tried the following on my implementation as well, and I can confirm the
behavior.  When I send ICMP_CODE_HOST_UNREACHABLE as I believe is the
correct code to send, telnet just hangs.  However, when I send
ICMP_CODE_PORT_UNREACHABLE, I get "telnet: Unable to connect to remote
host: Connection refused"  Incidentally, similar behavior occurs with
lynx, so it is not just telnet.

Why would telnet and lynx be implemented such that they give up on the
port unreachable response code but not on the host unreachable ICMP
response codes?

-- Neil


On Mon, 3 Mar 2003, Sheila Patel wrote:

> Hi,
> 
> My ICMP port unreachable seems to work fine; however, the ICMP host 
> unreachable does not.  Similar to what Martin mentioned in a previous 
> post, I ignore incoming ARP replies in order to test this.
> 
> The difference between the two ICMP messages I send is the ICMP code 
> field (3 for port unreachable versus 1 for host unreachable).  I tried 
> setting the code field to 3 (port unreachable) when I want to send the 
> ICMP host unreachable as the ARP retries have timed out, and oddly this 
> works (eventhough I get a "Connection refused" versus "no route to 
> host", the telnet to www-sheilap on port 80 still exits).  But, when I 
> set the code field correctly to 1 in this case, my telnet to port 80 on 
> www-sheilap doesn't exit.
> 
> I also ran tcpdump on my Linux machine to an unreachable machine in 
> order to compare the dumps, but I didn't find anything there either.
> 
> Any suggestions on how to find/solve the problem would be appreciated.
> 
> Thanks,
> Sheila
> 
> 
> The tcpdump from ICMP Port unreachable (working)
> ------------------------------------------------
> 
> INCOMING SYN TO SHEILAP-ROUTER-1:
> 
> 21:47:02.212044 171.64.15.114.61669 > 192.168.128.74.80: S [tcp sum ok] 
> 1467439760:1467439760(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) [tos 
> 0x10]  (ttl 60, id 44796, len 48)
>                           4510 0030 aefc 4000 3c06 9416 ab40 0f72
>                           c0a8 804a f0e5 0050 5777 5a90 0000 0000
>                           7002 60f4 8348 0000 0101 0402 0204 05b4
>                           0000 0000 0260 0000 0000 0002 cac8 0000
>                           0000 0000 0000 0000
> 
> REPLY FROM ROUTER:
> 21:47:02.212431 192.168.128.74 > 171.64.15.114: icmp: 192.168.128.74 tcp 
> port 80 unreachable for 171.64.15.114.61669 > 192.168.128.74.80: [|tcp] 
> (DF) [tos 0x10]  (ttl 60, id 44796, len 48) (ttl 255, id 0, len 56)
>                           4500 0038 0000 0000 ff01 c01f c0a8 804a
>                           ab40 0f72 0303 59bf 0000 0000 4510 0030
>                           aefc 4000 3c06 9416 ab40 0f72 c0a8 804a
>                           f0e5 0050 5777 5a90
> 
> 
> The tcpdump from ICMP Host unreachable (not working)
> ----------------------------------------------------
> 
> INCOMING SYN FOR WWW-SHEILAP:
> 
> 21:45:17.561596 171.64.15.114.61666 > 192.168.128.242.80: S [tcp sum ok] 
> 1441381559:1441381559(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) [tos 
> 0x10]  (ttl 60,
> id 13603, len 48)
>                           4510 0030 3523 4000 3c06 0d48 ab40 0f72
>                           c0a8 80f2 f0e2 0050 55e9 bcb7 0000 0000
>                           7002 60f4 220a 0000 0101 0402 0204 05b4
>                           0000 0000 0049 0000 0000 0000 0042 0000
>                           0004 6574 6830 0000
> 
> REPLY FROM ROUTER:
> 21:45:20.874442 192.168.128.74 > 171.64.15.114: icmp: host 
> 192.168.128.242 unreachable for 171.64.15.114.61666 > 
> 192.168.128.242.80: [|tcp] (DF) [tos 0x10]  (ttl 59, id 13603, len 48) 
> (ttl 255, id 0, len 56)
>                           4500 0038 0000 0000 ff01 c01f c0a8 804a
>                           ab40 0f72 0301 f92a 0000 0000 4510 0030
>                           3523 4000 3b06 0e48 ab40 0f72 c0a8 80f2
>                           f0e2 0050 55e9 bcb7
> 
> 
> 

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: icmp host unreachable
Date: Tue, 4 Mar 2003 08:13:11 -0800
Lines: 17
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046794394 150 171.64.15.112 (4 Mar 2003 16:13:14 GMT)
X-Complaints-To: 
To: Neil Daswani 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4773


>
> I tried the following on my implementation as well, and I can confirm the
> behavior.  When I send ICMP_CODE_HOST_UNREACHABLE as I believe is the
> correct code to send, telnet just hangs.  However, when I send
> ICMP_CODE_PORT_UNREACHABLE, I get "telnet: Unable to connect to remote
> host: Connection refused"  Incidentally, similar behavior occurs with
> lynx, so it is not just telnet.

 This must be due to the socket API.  Use ping to test out your host
 unreachable, it will report whether it has received a correct packet.  I don't
 have a good answer why a regular internet stream socket does not report an
 error on receipt of ICMP host unreachable.

 /mc


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Echo Request Reply problem
Date: Tue, 4 Mar 2003 08:15:00 -0800
Lines: 61
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046794502 234 171.64.15.112 (4 Mar 2003 16:15:02 GMT)
X-Complaints-To: 
To: Milap Chandrakant Shah 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4774


 ICMP echo request/reply is probably the most difficult to get right.  Be sure
 to compare your ping header fields with those in a properly generated reply,
 like those from the app servers.

 /mc


> Hi,
>
> I have the following problem in the Echo reply. I am sending all the
> replies properly, thge correct sequence numbers and other matching fields,
> Ethereal shows all the proper sequence of requests and replie, however the
> I dont the replies on the machine from where I pinged. Even the tcpdump
> looks allright. If ethereal is catching them means I am sending them on
> the network, however I am not receving them at the machine from where I
> pinged????.
>
> relevent portion of TCPDUMP
>
> 20:10:03.042626 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
> milaps-router-1.St
> anford.EDU tell vr-firewall.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8103 fd9e ac18
>                          4a11 0000 0000 0000 c0a8 8034 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0000
>                          0000 0000 0031 0000 0000 0001 0800 0604
>                          0001 00e0 8103
> 20:10:03.043232 70:0:0:2f:0:1 0:e0:81:3:fd:9e arp 42: arp reply
> milaps-router-1.
> Stanford.EDU is-at 70:0:0:2f:0:1
>                          0001 0800 0604 0002 7000 002f 0001 c0a8
>                          8034 00e0 8103 fd9e ac18 4a11
> 20:10:03.045828 0:e0:81:3:fd:9e 70:0:0:2f:0:1 ip 96: truncated-ip - 2
> bytes miss
> ing!elaine12.Stanford.EDU > milaps-router-1.Stanford.EDU: icmp: echo
> request (DF
> ) (ttl 251, id 4018, len 84)
>                          4500 0054 0fb2 4000 fb01 748c ab40 0f4d
>                          c0a8 8034 0800 bffe 57de 0000 3e64 271b
>                          0000 8fa0 0809 0a0b 0c0d 0e0f 1011 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
>                          3435
> 20:10:03.046419 70:0:0:2f:0:1 0:e0:81:3:fd:9e ip 96: truncated-ip - 2
> bytes miss
> ing!milaps-router-1.Stanford.EDU > elaine12.Stanford.EDU: icmp: echo reply
> (DF)
> (ttl 250, id 4018, len 84)
>                          4500 0054 0fb2 4000 fa01 758c c0a8 8034
>                          ab40 0f4d 0000 326b 57de 0000 3e64 271b
>                          0000 8fa0 0809 0a0b 0c0d 0e0f 1011 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
>                          3435
>
>
> Milap
>
>

.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: Re: Echo Request Reply problem
Date: Tue, 4 Mar 2003 08:26:02 -0800
Lines: 77
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine12.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046795163 613 171.64.15.77 (4 Mar 2003 16:26:03 GMT)
X-Complaints-To: 
To: Martin Casado 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4775

Hello,

I found the bug.
The problem was I was calculating the checksum wrong and the machine from
where I pinged was dropping it. Since ethereal shows wrong checksums for
ECHO request as well as for replies(since we are truncating 2 bytes), I
assumed that I was calculating the right checksum but ethereal showed it
wrong as compared to I was making a mistake in checksum calculation.

Milap



On Tue, 4 Mar 2003, Martin Casado wrote:

>
>  ICMP echo request/reply is probably the most difficult to get right.  Be sure
>  to compare your ping header fields with those in a properly generated reply,
>  like those from the app servers.
>
>  /mc
>
>
> > Hi,
> >
> > I have the following problem in the Echo reply. I am sending all the
> > replies properly, thge correct sequence numbers and other matching fields,
> > Ethereal shows all the proper sequence of requests and replie, however the
> > I dont the replies on the machine from where I pinged. Even the tcpdump
> > looks allright. If ethereal is catching them means I am sending them on
> > the network, however I am not receving them at the machine from where I
> > pinged????.
> >
> > relevent portion of TCPDUMP
> >
> > 20:10:03.042626 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has
> > milaps-router-1.St
> > anford.EDU tell vr-firewall.Stanford.EDU
> >                          0001 0800 0604 0001 00e0 8103 fd9e ac18
> >                          4a11 0000 0000 0000 c0a8 8034 0000 0000
> >                          0000 0000 0000 0000 0000 0000 0000 0000
> >                          0000 0000 0031 0000 0000 0001 0800 0604
> >                          0001 00e0 8103
> > 20:10:03.043232 70:0:0:2f:0:1 0:e0:81:3:fd:9e arp 42: arp reply
> > milaps-router-1.
> > Stanford.EDU is-at 70:0:0:2f:0:1
> >                          0001 0800 0604 0002 7000 002f 0001 c0a8
> >                          8034 00e0 8103 fd9e ac18 4a11
> > 20:10:03.045828 0:e0:81:3:fd:9e 70:0:0:2f:0:1 ip 96: truncated-ip - 2
> > bytes miss
> > ing!elaine12.Stanford.EDU > milaps-router-1.Stanford.EDU: icmp: echo
> > request (DF
> > ) (ttl 251, id 4018, len 84)
> >                          4500 0054 0fb2 4000 fb01 748c ab40 0f4d
> >                          c0a8 8034 0800 bffe 57de 0000 3e64 271b
> >                          0000 8fa0 0809 0a0b 0c0d 0e0f 1011 1213
> >                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
> >                          2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
> >                          3435
> > 20:10:03.046419 70:0:0:2f:0:1 0:e0:81:3:fd:9e ip 96: truncated-ip - 2
> > bytes miss
> > ing!milaps-router-1.Stanford.EDU > elaine12.Stanford.EDU: icmp: echo reply
> > (DF)
> > (ttl 250, id 4018, len 84)
> >                          4500 0054 0fb2 4000 fa01 758c c0a8 8034
> >                          ab40 0f4d 0000 326b 57de 0000 3e64 271b
> >                          0000 8fa0 0809 0a0b 0c0d 0e0f 1011 1213
> >                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
> >                          2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
> >                          3435
> >
> >
> > Milap
> >
> >
>

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: FAQ updated
Date: Tue, 4 Mar 2003 08:51:55 -0800
Lines: 3
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046796717 1291 171.64.15.112 (4 Mar 2003 16:51:57 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4776


 FYI

.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: ARP reply
Date: Tue, 4 Mar 2003 10:29:10 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine41.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046802552 4504 171.64.15.116 (4 Mar 2003 18:29:12 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4777

I just want to confirm when sending ARP reply, at ethernet layer, we just
flip the destination and source hardware addresses of the ARP request,
that is, reply to the hop that the ARP request came from. Am I right?

The reason I am asking is that the given function prototype

void sr_handlearp( struct sr_instance* , struct sr_arphdr *, const char*);

suggests that we can totally forget about the ethernet layer of the
original ARP request. It may be ok if we are handling ARP reply, since
all we want is in the ARP header. But not for handling ARP request,
because we need to know the next hop our ARP reply should go to.

J.



.

Path: shelby.stanford.edu!elaine41.Stanford.EDU!jichun
From: Jichun Zhu 
Newsgroups: su.class.cs244a
Subject: Re: ARP reply
Date: Tue, 4 Mar 2003 10:35:54 -0800
Lines: 27
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine41.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046802956 4800 171.64.15.116 (4 Mar 2003 18:35:56 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4778

Correction. We do not flip the ether_dhost and ether_shost, since
ether_dhost of an ARP request is always FFFFFFFFFFFF, but use the
ether_shost of the ARP request as the ether_dhost of our ARP reply.
And we use the MAC of the interface that the original ARP request
came from as the ether_shost. Right?

On Tue, 4 Mar 2003, Jichun Zhu wrote:

> I just want to confirm when sending ARP reply, at ethernet layer, we just
> flip the destination and source hardware addresses of the ARP request,
> that is, reply to the hop that the ARP request came from. Am I right?
>
> The reason I am asking is that the given function prototype
>
> void sr_handlearp( struct sr_instance* , struct sr_arphdr *, const char*);
>
> suggests that we can totally forget about the ethernet layer of the
> original ARP request. It may be ok if we are handling ARP reply, since
> all we want is in the ARP header. But not for handling ARP request,
> because we need to know the next hop our ARP reply should go to.
>
> J.
>
>
>
>

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP reply
Date: Tue, 4 Mar 2003 10:51:42 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046803904 5344 171.64.15.112 (4 Mar 2003 18:51:44 GMT)
X-Complaints-To: 
To: Jichun Zhu 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4779


> I just want to confirm when sending ARP reply, at ethernet layer, we just
> flip the destination and source hardware addresses of the ARP request,
> that is, reply to the hop that the ARP request came from. Am I right?

 no, this is not correct.  If you do that you will be replying from broadcast
 ... you should copy in the source address of the interface you are replying
 out of.

>
> The reason I am asking is that the given function prototype
>
> void sr_handlearp( struct sr_instance* , struct sr_arphdr *, const char*);
>
> suggests that we can totally forget about the ethernet layer of the
> original ARP request. It may be ok if we are handling ARP reply, since
> all we want is in the ARP header. But not for handling ARP request,
> because we need to know the next hop our ARP reply should go to.

  You don't need to use sr_handlearp(..) (though you may) but this does not
  suggest that you forget about the ethernet layer completely.  ARP packets
  contain both source and destination hardware addresses within the header.

  /mc

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP reply
Date: Tue, 4 Mar 2003 10:52:08 -0800
Lines: 34
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046803929 5366 171.64.15.112 (4 Mar 2003 18:52:09 GMT)
X-Complaints-To: 
To: Jichun Zhu 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4780


> Correction. We do not flip the ether_dhost and ether_shost, since
> ether_dhost of an ARP request is always FFFFFFFFFFFF, but use the
> ether_shost of the ARP request as the ether_dhost of our ARP reply.
> And we use the MAC of the interface that the original ARP request
> came from as the ether_shost. Right?

 Yup :-)

 /mc

> On Tue, 4 Mar 2003, Jichun Zhu wrote:
>
> > I just want to confirm when sending ARP reply, at ethernet layer, we just
> > flip the destination and source hardware addresses of the ARP request,
> > that is, reply to the hop that the ARP request came from. Am I right?
> >
> > The reason I am asking is that the given function prototype
> >
> > void sr_handlearp( struct sr_instance* , struct sr_arphdr *, const char*);
> >
> > suggests that we can totally forget about the ethernet layer of the
> > original ARP request. It may be ok if we are handling ARP reply, since
> > all we want is in the ARP header. But not for handling ARP request,
> > because we need to know the next hop our ARP reply should go to.
> >
> > J.
> >
> >
> >
> >
>
>

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Interesting Discussion on Source IP of Generated Packets
Date: Tue, 4 Mar 2003 11:08:40 -0800
Lines: 54
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046804921 6191 171.64.15.112 (4 Mar 2003 19:08:41 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4781


FYI

------------------------------------------------------------------------

Hi,

first of all, any implementation of this will likely get you 100/100.
That being said, here are my 2 cents on what is correct.

>>>  I don't follow your logic.  I don't think it is valid to assume all
>>>routs are  bidirectional .. just because you received a packet in one
>>>interface does  not mean the same interface should be used to send the
>>>packet back out...  I still maintain that the correct way to handle
>>>replies is to consult the  routing table before determining the next
>>>hop of packets generated at the  router.
>>>

Definitely true. Think about unidirectional links!!

>>>
>>> /mc
>>>
>>>
>>Hmm.. Can you please confirm my understanding here?
>>
>>So, the interface where to send the packet back out is consulted from the
>>routing table, because the packet doesn't necessarily go in & out through
>>the same interface. However, the source ip field in the IP header does not
>>necessarily the IP address of the interface to send the packet back out. Is
>>this correct?
>>
I assume you are talking about ICMP's here? It depends on the type:
- For timeouts routers use either the incoming interface or the default
(often the maintenance or lowest) interface.
- For host/network unreachable use the default
- For port unreachable and echo use the interface it was addressed to

  Guido

>>
>>
>
>  .... good point ... it would seem so and perhaps is not all that outlandish
>  when you consider that the originating interface should be the source
>  address.  I must admit that I am partially guessing here .... and don't have
>  any concrete documentation to support this... perhaps some bigger guns can
>  clear things up.
>
>  Guido?
>
>  /mc
>

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!mmahathi
From: Mahathi Sai Prasanna Mahabhashyam 
Newsgroups: su.class.cs244a
Subject: ICMP Structure
Date: Tue, 4 Mar 2003 11:44:46 -0800
Lines: 57
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046807088 7695 171.64.15.117 (4 Mar 2003 19:44:48 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4782

Hi,
   I am using the /netinet/ip_icmp.h ivmp structure for my icmp message.
But the problem is that I am getting compilation errors when I compile
that code. I havent changed or modified the file in any way.  Has anyone
else got this problem? I am giving a snapshot of the
errors I am getting.
Thanks,
Mahathi.

errors:
elaine36:~/ass3/sr_stub> make
gcc -MM -g -Wall -ansi -D_DEBUG_ -D_SOLARIS_ sr_router.c  > .sr_router.d
gcc -c -g -Wall -ansi -D_DEBUG_ -D_SOLARIS_ sr_router.c -o sr_router.o
In file included from sr_router.c:17:
/usr/include/netinet/ip_icmp.h:63: field `ih_gwaddr' has incomplete type
/usr/include/netinet/ip_icmp.h:65: parse error before `n_short'
/usr/include/netinet/ip_icmp.h:65: warning: no semicolon at end of struct
or union
/usr/include/netinet/ip_icmp.h:65: warning: no semicolon at end of struct
or union
/usr/include/netinet/ip_icmp.h:66: warning: no semicolon at end of struct
or union
/usr/include/netinet/ip_icmp.h:67: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:72: parse error before `n_short'
/usr/include/netinet/ip_icmp.h:72: warning: no semicolon at end of struct
or union
/usr/include/netinet/ip_icmp.h:73: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:74: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:79: parse error before `n_short'
/usr/include/netinet/ip_icmp.h:79: warning: no semicolon at end of struct
or union
/usr/include/netinet/ip_icmp.h:80: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:81: parse error before `}'
/usr/include/netinet/ip_icmp.h:81: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:91: parse error before `n_time'
/usr/include/netinet/ip_icmp.h:91: warning: no semicolon at end of struct
or union
/usr/include/netinet/ip_icmp.h:91: warning: no semicolon at end of struct
or union
/usr/include/netinet/ip_icmp.h:92: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:93: parse error before `its_ttime'
/usr/include/netinet/ip_icmp.h:93: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:94: warning: data definition has no type or
storage class
/usr/include/netinet/ip_icmp.h:96: field `idi_ip' has incomplete type
/usr/include/netinet/ip_icmp.h:101: parse error before `}'
/usr/include/netinet/ip_icmp.h:101: warning: data definition has no type
or storage class
/usr/include/netinet/ip_icmp.h:108: parse error before `}'

.

Path: shelby.stanford.edu!not-for-mail
From: "Rafael Ballagas" 
Newsgroups: su.class.cs244a
Subject: Re: Bad ICMP Checksum from ping?
Date: Tue, 4 Mar 2003 12:21:41 -0800
Lines: 97
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: ballagas.stanford.edu
X-Trace: news.Stanford.EDU 1046809301 9117 128.12.141.92 (4 Mar 2003 20:21:41 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4783

I'm having the same problem with respect to ICMP checksums.  I'm not
confident that I'm summing over the correct fields.  From the RFC, I've
defined an ICMP header with the following fields
     unsigned char icmp_type;
     unsigned char icmp_code;
     uint16_t  icmp_sum;

Obviously, I zero out the checksum field before calculating.  Am I leaving
something out?

Thanks
-Rafael

"Martin Casado"  wrote in message

>
>
>   You are saying that the ICMP packets generated by the elaines have an
>   incorrect checksum? :-/ That's strange.. I wonder if it is because the
>   snaplen for the packets is too small and you don't have the complete
packet
>   (though with a total ip length of 84 this shouldn't be the case still,
you might
>   want to increase the snaplen (sr_router.h PACKET_DUMP_SIZE) )  I am
having no
>   problems pinging from the elaines to the router and other machines on
the
>   network (traceroute too!).
>
>   /mc
>
>
> >
> > I got to the point in hw3 where I am successfully routing all packets
> > correctly in both directions between clients and the application
servers,
> > and I am currently working on supporting ICMP messages.
> >
> > However, when I receive ICMP packets generated by issuing a ping
command,
> > the ICMP header checksum that I get sent in the packets is incorrect.
> > (Ethereal even says so!)  So I am confused about what is going on... see
> > the following...
> >
> > (the following is a dump of an IP packet that contains an ICMP message
> > received from a "ping daswani-router-1" command that I issued...)
> >
> > *** -> Received packet is IP.
> > 7000 000f 0001 00e0 8103 fd9e 0800 4500
> > 0054 afd4 4000 fb01 d48e ab40 0f48 c0a8
> > 8014 0800 248a 35d5 0003 3e64 3b38 0000
> > 38fe 0809 0a0b 0c0d 0e0f 1011 1213 1415
> > 1617 1819 1a1b 1c1d 1e1f 2021 2223 2425
> > 2627 2829 2a2b 2c2d 2e2f 3031 3233 3435
> > 3637
> > IPPacket: (Src:171.64.15.72,Dst:192.168.128.20,TTL:251,TotalLen:84)
> > *** -> IP Checksum is OK.
> >
> > *** -> Packet is ICMP.
> > 4500 0054 afd4 4000 fb01 d48e ab40 0f48
> > c0a8 8014 0800 248a 35d5 0003 3e64 3b38
> > 0000 38fe 0809 0a0b 0c0d 0e0f 1011 1213
> > 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
> > 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
> > 3435 3637
> >
> > before checksum calc:0800 0000
> > isICMPCRCOk: old_cksm=9354 (248a); new_cksm=63487 (f7ff)
> >
> > Etherreal says that 0x248a is incorrect as the checksum, and that it
> > should be 0x5ac1.  On top of this, my own checksum calcuation comes up
> > with 0xf7ff!  So I am quite confused! :)  I used the checksum
calculation
> > code from Peterson and Davie.  I am using the same calculate checksum
code
> > that I use for the IP header checksum, and it successfully verifies the
IP
> > checksum.  (And, yes, I do zero out the checksum fields before doing the
> > checksum computations for both the IP and ICMP checksum.)
> >
> > Does anyone (especially any of the TA's) have an idea as to why this
might
> > be happening?
> >
> > Thanks,
> >
> > -- Neil
> >
> >
> >
> >
> >
> >
> >
>


.

Path: shelby.stanford.edu!saga4.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: suspicious packet for my router?
Date: Tue, 4 Mar 2003 20:39:58 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga4.stanford.edu
X-Trace: news.Stanford.EDU 1046810398 9717 171.64.15.134 (4 Mar 2003 20:39:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4784


I see this in my tcp dump?
is this normal?

thanx,
ceekay

12:37:13.889761 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp who-has ceekay-router-3.Stanford.EDU tell ftp-brandon.Stanford.EDU
                         0001 0800 0604 0001 00e0 8104 26d8 c0a8
                         8145 0000 0000 0000 c0a8 8148 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 0402
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         7000 000c 0001

.

Path: shelby.stanford.edu!saga4.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: Re: ARP reply
Date: Tue, 4 Mar 2003 21:01:37 +0000 (UTC)
Lines: 2412
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: saga4.stanford.edu
X-Trace: news.Stanford.EDU 1046811697 10623 171.64.15.134 (4 Mar 2003 21:01:37 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4785


12:49:55.753608 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0000
			 0000 0000 0260 0000 0000 0002 cd20 0000
			 0000 0000 0000
12:49:56.753290 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0000
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e
12:49:57.751183 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0000
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e
12:49:58.774562 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0000
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e
12:49:58.870239 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0000
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e
12:49:58.870432 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
			 0001 0800 0604 0002 7000 000c 0001 c0a8
			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
12:49:58.872216 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.51746 > ftp-ceekay.Stanford.EDU.ftp: F [tcp sum ok] 4267915067:4267915067(0) ack 2410324461 win 24820 (DF) (ttl 60, id 64169, len 40)
			 4500 0028 faa9 4000 3c06 479e ab40 0f56
			 c0a8 8149 ca22 0015 fe63 373b 8faa a1ed
			 5011 60f4 20e8 0000 0000 0000 0000 0000
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 00e0 8103 fd9e
12:49:58.872542 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-3.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0006 c0a8
			 8148 0000 0000 0000 c0a8 8149
12:49:58.874373 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 86: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 104016588:104016588(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 60, id 64170, len 48)
			 4500 0030 faaa 4000 3c06 4795 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acc 0000 0000
			 7002 60f4 2a62 0000 0101 0402 0204 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006 0806
12:49:58.874654 70:0:0:c:0:6 Broadcast arp 42: arp who-has ftp-ceekay.Stanford.EDU tell ceekay-router-3.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0006 c0a8
			 8148 0000 0000 0000 c0a8 8149
12:49:58.875826 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
			 8149 7000 000c 0006 c0a8 8148 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006
12:49:58.876084 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 60: elaine21.Stanford.EDU.51746 > ftp-ceekay.Stanford.EDU.ftp: F [tcp sum ok] 0:0(0) ack 1 win 24820 (DF) (ttl 59, id 64169, len 40)
			 4500 0028 faa9 4000 3b06 489e ab40 0f56
			 c0a8 8149 ca22 0015 fe63 373b 8faa a1ed
			 5011 60f4 20e8 0000 0000 0000 0000
12:49:58.877249 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp reply ftp-ceekay.Stanford.EDU is-at 0:e0:81:4:26:d8
			 0001 0800 0604 0002 00e0 8104 26d8 c0a8
			 8149 7000 000c 0006 c0a8 8148 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006
12:49:58.877499 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 62: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: S [tcp sum ok] 104016588:104016588(0) win 24820 <nop,nop,sackOK,mss 1460> (DF) (ttl 59, id 64170, len 48)
			 4500 0030 faaa 4000 3b06 4895 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acc 0000 0000
			 7002 60f4 2a62 0000 0101 0402 0204 05b4
12:49:58.878447 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 84: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51746: R [tcp sum ok] 2410324461:2410324461(0) win 0 (DF) (ttl 255, id 0, len 40)
			 4500 0028 0000 4000 ff06 7f47 c0a8 8149
			 ab40 0f56 0015 ca22 8faa a1ed 0000 0000
			 5004 0000 b788 0000 0000 0000 0000 05b4
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0006
12:49:58.878740 70:0:0:c:0:1 Broadcast arp 42: arp who-has vr-firewall.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0001 c0a8
			 8011 0000 0000 0000 ac18 4a11
12:49:58.879700 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001 0806
12:49:58.879994 70:0:0:c:0:1 Broadcast arp 42: arp who-has vr-firewall.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0001 c0a8
			 8011 0000 0000 0000 ac18 4a11
12:49:58.881759 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
			 0001 0800 0604 0002 00e0 8103 fd9e ac18
			 4a11 7000 000c 0001 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:49:58.882009 0:e0:81:4:26:d8 0:e0:81:3:fd:9e ip 60: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51746: R [tcp sum ok] 2410324461:2410324461(0) win 0 (DF) (ttl 254, id 0, len 40)
			 4500 0028 0000 4000 fe06 8047 c0a8 8149
			 ab40 0f56 0015 ca22 8faa a1ed 0000 0000
			 5004 0000 b788 0000 0000 0000 0000
12:49:58.883239 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
			 0001 0800 0604 0002 00e0 8103 fd9e ac18
			 4a11 7000 000c 0001 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:49:58.883489 0:e0:81:4:26:d8 0:e0:81:3:fd:9e ip 62: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 63, id 0, len 48)
			 4500 0030 0000 4000 3f06 3f40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
12:49:58.885855 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 60, id 64171, len 40)
			 4500 0028 faab 4000 3c06 479c ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:49:58.886147 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 60: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 59, id 64171, len 40)
			 4500 0028 faab 4000 3b06 489c ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000
12:49:59.771082 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:00.771354 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:03.277072 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001 0806
12:50:03.277602 70:0:0:c:0:1 Broadcast arp 42: arp who-has vr-firewall.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0001 c0a8
			 8011 0000 0000 0000 ac18 4a11
12:50:03.277809 0:e0:81:4:26:d8 0:e0:81:3:fd:9e ip 62: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 63, id 0, len 48)
			 4500 0030 0000 4000 3f06 3f40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
12:50:03.279033 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
			 0001 0800 0604 0002 00e0 8103 fd9e ac18
			 4a11 7000 000c 0001 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:03.370351 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 60, id 64172, len 40)
			 4500 0028 faac 4000 3c06 479b ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:03.370673 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 60: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 59, id 64172, len 40)
			 4500 0028 faac 4000 3b06 489b ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000
12:50:04.117517 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp who-has ceekay-router-3.Stanford.EDU tell ftp-brandon.Stanford.EDU
			 0001 0800 0604 0001 00e0 8104 26d8 c0a8
			 8145 0000 0000 0000 c0a8 8148 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:04.117761 70:0:0:c:0:6 0:e0:81:4:26:d8 arp 60: arp reply ceekay-router-3.Stanford.EDU is-at 70:0:0:c:0:6
			 0001 0800 0604 0002 7000 000c 0006 c0a8
			 8148 00e0 8104 26d8 c0a8 8145 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
12:50:04.118617 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:04.982577 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:05.982251 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:07.066738 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:08.063362 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:09.062980 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:09.278049 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001 0806
12:50:09.278412 70:0:0:c:0:1 Broadcast arp 42: arp who-has vr-firewall.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0001 c0a8
			 8011 0000 0000 0000 ac18 4a11
12:50:09.278624 0:e0:81:4:26:d8 0:e0:81:3:fd:9e ip 62: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 63, id 0, len 48)
			 4500 0030 0000 4000 3f06 3f40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
12:50:09.280052 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
			 0001 0800 0604 0002 00e0 8103 fd9e ac18
			 4a11 7000 000c 0001 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:09.285346 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 60, id 64173, len 40)
			 4500 0028 faad 4000 3c06 479a ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:09.285641 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 60: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 59, id 64173, len 40)
			 4500 0028 faad 4000 3b06 489a ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000
12:50:10.515932 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:11.513492 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:12.513637 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:13.758636 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:14.754851 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:15.754316 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:16.773638 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:17.765258 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:18.764968 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:19.813356 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:20.805394 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:21.280668 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001 0806
12:50:21.281059 70:0:0:c:0:1 Broadcast arp 42: arp who-has vr-firewall.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0001 c0a8
			 8011 0000 0000 0000 ac18 4a11
12:50:21.281260 0:e0:81:4:26:d8 0:e0:81:3:fd:9e ip 62: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 63, id 0, len 48)
			 4500 0030 0000 4000 3f06 3f40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
12:50:21.282896 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
			 0001 0800 0604 0002 00e0 8103 fd9e ac18
			 4a11 7000 000c 0001 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:21.380294 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 60, id 64174, len 40)
			 4500 0028 faae 4000 3c06 4799 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:21.380633 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 60: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 59, id 64174, len 40)
			 4500 0028 faae 4000 3b06 4899 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000
12:50:21.805549 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:23.091724 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:24.086089 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:25.086295 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:28.771262 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:29.767418 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:30.767618 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:31.913339 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:32.907998 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:33.908197 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:35.188692 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:36.188678 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:37.188983 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:40.218081 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:41.209768 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:42.210213 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:43.733170 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:44.730850 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:45.285129 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001 0806
12:50:45.285468 70:0:0:c:0:1 Broadcast arp 42: arp who-has vr-firewall.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0001 c0a8
			 8011 0000 0000 0000 ac18 4a11
12:50:45.285679 0:e0:81:4:26:d8 0:e0:81:3:fd:9e ip 62: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 63, id 0, len 48)
			 4500 0030 0000 4000 3f06 3f40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
12:50:45.287286 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
			 0001 0800 0604 0002 00e0 8103 fd9e ac18
			 4a11 7000 000c 0001 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:45.379444 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 60, id 64175, len 40)
			 4500 0028 faaf 4000 3c06 4798 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:45.379744 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 60: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 59, id 64175, len 40)
			 4500 0028 faaf 4000 3b06 4898 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000
12:50:45.730708 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:46.774986 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:47.771276 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:48.771744 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:50.108423 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:50.281692 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:50.281882 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
			 0001 0800 0604 0002 7000 000c 0001 c0a8
			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
12:50:51.102131 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:52.102087 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:53.258499 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:54.252710 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:55.252757 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:56.306768 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:57.303234 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:58.303309 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:50:59.385214 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:00.385781 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:01.384780 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:04.264531 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:05.265002 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:06.265384 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:07.773268 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:08.765446 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:09.765622 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:11.482430 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:12.476300 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:13.476394 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:15.270789 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:16.267282 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:17.267216 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:18.274596 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:19.267692 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:20.268026 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:22.771284 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:23.768557 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:24.768760 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:25.778428 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:26.769179 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:27.769634 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:28.772645 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:29.769935 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:30.770699 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:32.400769 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:33.390672 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:33.494447 0:e0:81:4:26:d8 70:0:0:c:0:6 ip 86: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 64, id 0, len 48)
			 4500 0030 0000 4000 4006 3e40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001 0806
12:51:33.494821 70:0:0:c:0:1 Broadcast arp 42: arp who-has vr-firewall.Stanford.EDU tell ceekay-router-1.Stanford.EDU
			 0001 0800 0604 0001 7000 000c 0001 c0a8
			 8011 0000 0000 0000 ac18 4a11
12:51:33.495023 0:e0:81:4:26:d8 0:e0:81:3:fd:9e ip 62: ftp-ceekay.Stanford.EDU.ftp > elaine21.Stanford.EDU.51756: S [tcp sum ok] 2941641738:2941641738(0) ack 104016589 win 5840 <mss 1460,nop,nop,sackOK> (DF) (ttl 63, id 0, len 48)
			 4500 0030 0000 4000 3f06 3f40 c0a8 8149
			 ab40 0f56 0015 ca2c af55 e40a 0633 2acd
			 7012 16d0 e114 0000 0204 05b4 0101 0402
12:51:33.496340 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
			 0001 0800 0604 0002 00e0 8103 fd9e ac18
			 4a11 7000 000c 0001 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:33.588818 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 60, id 64176, len 40)
			 4500 0028 fab0 4000 3c06 4797 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:33.589138 0:e0:81:3:fd:9e 0:e0:81:4:26:d8 ip 60: elaine21.Stanford.EDU.51756 > ftp-ceekay.Stanford.EDU.ftp: . [tcp sum ok] 1:1(0) ack 1 win 24820 (DF) (ttl 59, id 64176, len 40)
			 4500 0028 fab0 4000 3b06 4897 ab40 0f56
			 c0a8 8149 ca2c 0015 0633 2acd af55 e40b
			 5010 60f4 c3b4 0000 0000 0000 0000
12:51:34.391008 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:35.679109 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:36.250253 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has sberg-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8046 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:36.674318 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:37.671634 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:38.491781 0:e0:81:3:fd:9e 70:0:0:c:0:1 arp 84: arp who-has ceekay-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8011 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:38.492024 70:0:0:c:0:1 0:e0:81:3:fd:9e arp 60: arp reply ceekay-router-1.Stanford.EDU is-at 70:0:0:c:0:1
			 0001 0800 0604 0002 7000 000c 0001 c0a8
			 8011 00e0 8103 fd9e ac18 4a11 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
12:51:38.495501 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp who-has ceekay-router-3.Stanford.EDU tell ftp-brandon.Stanford.EDU
			 0001 0800 0604 0001 00e0 8104 26d8 c0a8
			 8145 0000 0000 0000 c0a8 8148 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:38.495674 70:0:0:c:0:6 0:e0:81:4:26:d8 arp 60: arp reply ceekay-router-3.Stanford.EDU is-at 70:0:0:c:0:6
			 0001 0800 0604 0002 7000 000c 0006 c0a8
			 8148 00e0 8104 26d8 c0a8 8145 0000 0000
			 0000 0000 0000 0000 0000 0000 0000
12:51:40.208205 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:41.202366 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:42.202469 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:43.782587 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:44.773919 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:45.773692 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:47.377993 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has sheilap-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 804a 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:47.777376 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:48.774313 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:49.774107 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:51.224698 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:52.224653 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:53.225206 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:55.751886 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:56.745852 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:57.745808 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:58.765673 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:51:59.756207 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:00.756563 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:02.242593 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:03.236803 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:04.237279 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:05.923145 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:06.917568 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:07.917780 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:10.304630 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:11.298713 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:12.298732 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:13.755918 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:14.749477 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:15.749921 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:16.765374 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:17.759839 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:18.760114 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:21.310907 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:22.311148 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:23.311126 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:25.026909 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:26.021557 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:27.022050 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:28.761803 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:29.752339 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:30.753145 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:31.760617 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:32.753071 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:33.755129 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:34.765153 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:35.763735 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:36.763940 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:39.945363 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:40.946865 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:41.945288 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:43.172983 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:44.165496 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:45.166059 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:46.308109 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:47.306522 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:48.312469 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:49.765832 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:50.757194 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:51.757322 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:52.770779 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:53.767469 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:54.767837 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:57.328838 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:58.318520 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:52:59.318674 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:01.319828 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:02.319229 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:03.319575 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:04.768198 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:05.761775 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:06.760356 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:07.769930 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:08.762524 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:09.760826 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:10.762833 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:11.761203 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:12.761476 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:14.351028 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:15.341937 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:16.342239 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:19.258007 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:20.253123 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:21.253305 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:22.337672 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:23.333964 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:24.333818 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:25.515945 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:26.514267 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:27.514434 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:28.765984 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:29.435524 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has mkalman-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8036 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:29.765718 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:30.765157 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:34.335541 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:35.326396 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:36.326432 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:37.672794 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:38.667528 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:39.667107 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:40.765765 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:41.757551 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:42.758106 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:43.773394 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:44.769101 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:45.768952 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:47.302076 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:48.299097 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:49.299090 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:52.308528 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:53.300011 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:54.300270 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:55.751296 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:56.750773 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:57.750881 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:58.765020 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:53:59.761423 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:00.761512 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:01.980799 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:02.971841 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:03.972050 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:07.619784 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:08.613031 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:09.613203 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:10.765484 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:11.701163 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has 192.168.129.239 tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 81ef 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:11.796925 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:12.693887 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has 192.168.129.239 tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 81ef 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:12.786801 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:13.694203 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has 192.168.129.239 tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 81ef 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:14.341696 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:15.334579 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:16.334606 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:17.506943 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:18.505569 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:19.505372 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:20.658630 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:21.655729 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:22.656228 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:25.358436 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:26.356745 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:27.356929 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:28.762738 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:29.757430 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:30.757677 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:31.762205 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:32.758095 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:33.758529 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:34.760871 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:35.758778 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:36.759015 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:38.913358 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:39.909649 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:40.910076 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:42.384111 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:43.380391 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:44.380829 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:46.758263 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:47.751285 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:48.751799 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:49.767451 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:50.762167 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:51.762121 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:53.400996 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:54.392709 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:55.394108 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:57.062601 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:58.053436 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:54:59.053794 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:01.736724 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:02.734471 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:03.734523 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:04.755827 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:05.755182 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:06.755214 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:09.157549 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:10.155868 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:11.156122 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:13.607214 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:14.606838 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:15.607035 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:16.761347 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:17.758425 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:18.496597 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has primdahl-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 803e 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:18.758200 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:20.342063 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:21.338221 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:22.338394 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:24.095176 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:25.089027 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:26.089205 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:27.305006 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:28.299674 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:29.299965 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:31.358539 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:32.350482 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:33.350714 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:34.757718 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:35.751200 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:36.751633 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:39.402432 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:40.402364 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:41.402768 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:43.681329 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:44.673230 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:45.673365 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:45.766085 0:e0:81:3:81:61 Broadcast arp 84: arp who-has primdahl-router-2.Stanford.EDU tell www-brandon.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 8161 c0a8
			 807c 0000 0000 0000 c0a8 80d9 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:46.722188 0:e0:81:3:81:61 Broadcast arp 84: arp who-has primdahl-router-2.Stanford.EDU tell www-brandon.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 8161 c0a8
			 807c 0000 0000 0000 c0a8 80d9 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:46.815698 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:47.722665 0:e0:81:3:81:61 Broadcast arp 84: arp who-has primdahl-router-2.Stanford.EDU tell www-brandon.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 8161 c0a8
			 807c 0000 0000 0000 c0a8 80d9 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:47.816006 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:48.754632 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:50.438367 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:51.434610 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:52.437091 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:54.289783 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:55.286269 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:56.285611 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:57.549303 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:58.546369 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:55:59.546284 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:01.445397 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:02.436885 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:03.437032 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:04.757940 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:05.757537 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:06.758407 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:09.647057 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:10.638546 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:11.638773 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:12.964738 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:13.959569 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:14.959828 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:16.173794 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:17.170022 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:18.170090 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:19.690558 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:20.690672 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:21.690814 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:22.756601 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:23.751498 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:24.751519 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:26.441947 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:27.432347 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:28.432237 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:31.061289 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:32.052995 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:33.053291 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:34.428853 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:35.424024 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:36.423952 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:37.450052 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:38.444464 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:39.444755 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:40.480700 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:41.475334 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:42.475547 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:43.729740 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:44.726043 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:45.726179 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:46.758348 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:47.756362 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:48.756836 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:49.764810 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:50.756939 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
12:56:51.757396 0:e0:81:3:fd:9e Broadcast arp 84: arp who-has ssho-router-1.Stanford.EDU tell vr-firewall.Stanford.EDU
			 0001 0800 0604 0001 00e0 8103 fd9e ac18
			 4a11 0000 0000 0000 c0a8 8051 0000 0000
			 0000 0000 0000 0000 0000 0000 0000 0402
			 0000 0000 0041 0000 0000 ffff ffff ffff
			 7000 000c 0001
.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Bad ICMP Checksum from ping?
Date: Tue, 4 Mar 2003 13:23:59 -0800
Lines: 105
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046813042 11523 171.64.15.69 (4 Mar 2003 21:24:02 GMT)
X-Complaints-To: 
To: Rafael Ballagas 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4786


> I'm having the same problem with respect to ICMP checksums.  I'm not
> confident that I'm summing over the correct fields.  From the RFC, I've
> defined an ICMP header with the following fields
>      unsigned char icmp_type;
>      unsigned char icmp_code;
>      uint16_t  icmp_sum;
>
> Obviously, I zero out the checksum field before calculating.  Am I leaving
> something out?
>
> Thanks
> -Rafael

 The checksum covers the entire message (including data!) a lot of students
 have been only checksuming the header.

 /mc

> "Martin Casado"  wrote in message
> 
> >
> >
> >   You are saying that the ICMP packets generated by the elaines have an
> >   incorrect checksum? :-/ That's strange.. I wonder if it is because the
> >   snaplen for the packets is too small and you don't have the complete
> packet
> >   (though with a total ip length of 84 this shouldn't be the case still,
> you might
> >   want to increase the snaplen (sr_router.h PACKET_DUMP_SIZE) )  I am
> having no
> >   problems pinging from the elaines to the router and other machines on
> the
> >   network (traceroute too!).
> >
> >   /mc
> >
> >
> > >
> > > I got to the point in hw3 where I am successfully routing all packets
> > > correctly in both directions between clients and the application
> servers,
> > > and I am currently working on supporting ICMP messages.
> > >
> > > However, when I receive ICMP packets generated by issuing a ping
> command,
> > > the ICMP header checksum that I get sent in the packets is incorrect.
> > > (Ethereal even says so!)  So I am confused about what is going on... see
> > > the following...
> > >
> > > (the following is a dump of an IP packet that contains an ICMP message
> > > received from a "ping daswani-router-1" command that I issued...)
> > >
> > > *** -> Received packet is IP.
> > > 7000 000f 0001 00e0 8103 fd9e 0800 4500
> > > 0054 afd4 4000 fb01 d48e ab40 0f48 c0a8
> > > 8014 0800 248a 35d5 0003 3e64 3b38 0000
> > > 38fe 0809 0a0b 0c0d 0e0f 1011 1213 1415
> > > 1617 1819 1a1b 1c1d 1e1f 2021 2223 2425
> > > 2627 2829 2a2b 2c2d 2e2f 3031 3233 3435
> > > 3637
> > > IPPacket: (Src:171.64.15.72,Dst:192.168.128.20,TTL:251,TotalLen:84)
> > > *** -> IP Checksum is OK.
> > >
> > > *** -> Packet is ICMP.
> > > 4500 0054 afd4 4000 fb01 d48e ab40 0f48
> > > c0a8 8014 0800 248a 35d5 0003 3e64 3b38
> > > 0000 38fe 0809 0a0b 0c0d 0e0f 1011 1213
> > > 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
> > > 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233
> > > 3435 3637
> > >
> > > before checksum calc:0800 0000
> > > isICMPCRCOk: old_cksm=9354 (248a); new_cksm=63487 (f7ff)
> > >
> > > Etherreal says that 0x248a is incorrect as the checksum, and that it
> > > should be 0x5ac1.  On top of this, my own checksum calcuation comes up
> > > with 0xf7ff!  So I am quite confused! :)  I used the checksum
> calculation
> > > code from Peterson and Davie.  I am using the same calculate checksum
> code
> > > that I use for the IP header checksum, and it successfully verifies the
> IP
> > > checksum.  (And, yes, I do zero out the checksum fields before doing the
> > > checksum computations for both the IP and ICMP checksum.)
> > >
> > > Does anyone (especially any of the TA's) have an idea as to why this
> might
> > > be happening?
> > >
> > > Thanks,
> > >
> > > -- Neil
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
>
>
>

.

Path: shelby.stanford.edu!elaine4.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: suspicious packet for my router?
Date: Tue, 4 Mar 2003 13:25:21 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine4.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046813124 11560 171.64.15.69 (4 Mar 2003 21:25:24 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4787


>
> I see this in my tcp dump?
> is this normal?

not really .. it looks like brandon's code or topology is broken.

/mc

>
> 12:37:13.889761 0:e0:81:4:26:d8 70:0:0:c:0:6 arp 84: arp who-has ceekay-router-3.Stanford.EDU tell ftp-brandon.Stanford.EDU
>                          0001 0800 0604 0001 00e0 8104 26d8 c0a8
>                          8145 0000 0000 0000 c0a8 8148 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 0402
>                          0000 0000 0041 0000 0000 ffff ffff ffff
>                          7000 000c 0001
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Jichun Zhu" 
Newsgroups: su.class.cs244a
Subject: Re: TTL question
Date: Tue, 4 Mar 2003 14:39:03 -0800
Organization: Stanford University
Lines: 25
Distribution: su
Message-ID: 
References:  
Reply-To: "Jichun Zhu" 
NNTP-Posting-Host: prelude.stanford.edu
X-Trace: news.Stanford.EDU 1046817543 14173 171.64.170.140 (4 Mar 2003 22:39:03 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4788

Do we actually see IP packets destined only to one of our router's
interfaces? In that case, what shall we do about these IP packets other than
dropping them?

J.

"Steve Jacobson"  wrote in message

> No, end stations do not drop packets based on the TTL value.
> When a packet is addressed to the router, the router behaves
> like an end station with regards to that packet.
>
> SteveJ
>
> >
> >I saw in the FAQ that we're supposed to send a Timeout ICMP message
> >whenever an arriving IP packet has a TTL field of 1 or 0.  Just
wondering:
> >if we get an IP packet that's addressed to our router with a TTL field of
> >1 or 0, do we still send a Timeout message?  After all, it did reach its
> >destination.
> >
>


.

Path: shelby.stanford.edu!saga4.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: vr-server-a working?
Date: Tue, 4 Mar 2003 23:41:24 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga4.stanford.edu
X-Trace: news.Stanford.EDU 1046821284 16566 171.64.15.134 (4 Mar 2003 23:41:24 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4789

My router does not get any packets when connected to 
vr-server-a.

works fine with vr-server-b.

has anyone else seen the same problem?

thanx,
ceekay
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: TTL question
Date: Tue, 4 Mar 2003 16:48:01 -0800
Lines: 38
Distribution: su
Message-ID: 
References:  
 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046825283 19261 171.64.15.112 (5 Mar 2003 00:48:03 GMT)
X-Complaints-To: 
To: Jichun Zhu 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4790

On Tue, 4 Mar 2003, Jichun Zhu wrote:

> Do we actually see IP packets destined only to one of our router's
> interfaces?

 yes

> In that case, what shall we do about these IP packets other than
> dropping them?

 this is covered in the assignment writeup check the required functionality
 section.

 /mc

> J.
>
> "Steve Jacobson"  wrote in message
> 
> > No, end stations do not drop packets based on the TTL value.
> > When a packet is addressed to the router, the router behaves
> > like an end station with regards to that packet.
> >
> > SteveJ
> >
> > >
> > >I saw in the FAQ that we're supposed to send a Timeout ICMP message
> > >whenever an arriving IP packet has a TTL field of 1 or 0.  Just
> wondering:
> > >if we get an IP packet that's addressed to our router with a TTL field of
> > >1 or 0, do we still send a Timeout message?  After all, it did reach its
> > >destination.
> > >
> >
>
>
>

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: vr-server-a working?
Date: Tue, 4 Mar 2003 16:50:29 -0800
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046825430 19371 171.64.15.112 (5 Mar 2003 00:50:30 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4791



> My router does not get any packets when connected to
> vr-server-a.
>
> works fine with vr-server-b.
>
> has anyone else seen the same problem?

  it seems ok to me :-/

  /mc


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Martin's office hours 3/4
Date: Tue, 4 Mar 2003 17:08:20 -0800
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046826502 20055 171.64.15.112 (5 Mar 2003 01:08:22 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4792


 I'll be in my "office" most of the evening ...

 5:00 pm -> 7:00 pm

 9:00pm -> midnight

 You can reach me at

 (925) 423 - 8864

 /mc

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Martin's contact # for tonight has changed
Date: Tue, 4 Mar 2003 21:25:48 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046841955 28889 171.64.15.110 (5 Mar 2003 05:25:55 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4793


 You can reach me @ (925) 337 - 2137 from 9:45 - 12:00 or so.

 /mc

.

Path: shelby.stanford.edu!epic17.Stanford.EDU!ericcxu
From: Eric Chenjian Xu 
Newsgroups: su.class.cs244a
Subject: Re: ARP header structure field alignment?
Date: Wed, 5 Mar 2003 00:48:16 -0800
Lines: 100
Distribution: su
Message-ID: 
References: 
  
 
NNTP-Posting-Host: epic17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046854098 5944 171.64.15.52 (5 Mar 2003 08:48:18 GMT)
X-Complaints-To: 
Cc: Steve Jacobson 
To: Jichun Zhu 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4794

I'm seeing a similar problem.
Right after I made sure it's an ip packet in sr_handlepacket, I did

struct sr_ethernet_hdr *ether_hdr
  = (struct sr_ethernet_hdr*) packet;

--- if ip packet ---
printf("%x\n", ((struct ip*) (packet
   + sizeof(struct sr_ethernet_hdr)))->ip_dst.s_addr);

Then a seg fault was generated.

ip_dst is the last field in struct ip and s_addr accesses the last field
in struct in_addr, but the packet was freshly read, and I haven't done
anything to the packet yet.

I'm puzzled too.  Clues?

Eric


On Tue, 4 Mar 2003, Jichun Zhu wrote:

> It turns out, the ar_tip field was access correctly. The problem occurred
> when I was trying to print it out using
>
> printf("The target IP is %s.\n",
> 	inet_ntoa(*((struct in_addr *)(&(arphdr->ar_tip)))));
>
> For some reason, it gave me seg fault. But exactly the same code worked on
> ar_sip field.
>
> Then I turned to
>
> printf("The target IP is %x.\n", arphdr->ar_tip);
>
> It gave me the right Hex digits, verified with ethereal output.
>
> Still feeling puzzled.
>
> J.
>
>
>
> On Tue, 4 Mar 2003, Jichun Zhu wrote:
>
> > This is what I did,
> >
> > I got a (uint8_t *packet).
> >
> > struct sr_ethernet_hdr *header = (struct sr_ethernet_hdr *)packet;
> >
> > This allowed me to access the fields in the ethernet header, and we
> > learned that this is an ARP packet. Then
> >
> > struct sr_arphdr *arpheader = (struct sr_arphdr *) (header + 1);
> >
> > The arpheader pointer skips the ethernet header points to the beginning of
> > the ARP header that is wrapped in the ethernet packet, and allows me to
> > access the ARP header fields.
> >
> > So here I am not doing any memory copy or allocation. Just pointer
> > arithmetic.
> >
> > Puzzling...
> >
> > J.
> >
> >
> > On Tue, 4 Mar 2003, Steve Jacobson wrote:
> >
> > > ar_tip is the last field of the ARP packet.  Alignment
> > > shouldn't be an issue.  I wonder if the buffer it's stored
> > > in is not declared to be large enough?
> > >
> > > SteveJ
> > >
> > > In article 
> > > Jichun Zhu   wrote:
> > > >I did read about the problems possibly caused by byte alignment in the ip
> > > >header, which seemed to be fixed with __attribute__ ((packed)) declaration
> > > >of the struct.
> > > >
> > > >The sr_arphdr struct is indeed declared with packed keyword. But I am
> > > >having seg fault when accessing the "ar_tip" field. All the other fields
> > > >such as ar_sip, ar_sha, sr_tha, all turned out to be accessible.
> > > >
> > > >Must be something really simple. What is it?
> > > >
> > > >J.
> > > >
> > >
> > >
> > >
> >
> >
>
>


.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: ARP Resend Failure
Date: Wed, 5 Mar 2003 04:05:43 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1046865945 13279 128.12.106.31 (5 Mar 2003 12:05:45 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4795

I have a question about when we've retransmitted an ARP request 5 or 6 times
to no avail.

ARP request x 6 for IP address A.A.A.A.  No luck (timed out 6 times).


So, I'm sending an ICMP Destination Unreachable back to the original sender
of whatever packet caused me to need to use ARP, call this packet X.

Thus, I look at the source address for X in IP's header, and I'm looking in
the routing table to find the next-hop, and find the next-hop IP.

Now, what if my ARP cache does not have a hardware address corresponding to
this next-hop IP address?  Do I have to queue the ICMP packet, wait for an
ARP reply, and then send the ICMP packet out?

For some reason, I feel like this adds a ton of complexity to my code - is
this the right track?


.

Path: shelby.stanford.edu!not-for-mail
From: "Srinivas Panguluri" 
Newsgroups: su.class.cs244a
Subject: Re: ARP Resend Failure
Date: Wed, 5 Mar 2003 05:16:12 -0800
Lines: 34
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: donkey.stanford.edu
X-Trace: news.Stanford.EDU 1046870175 15895 128.12.106.31 (5 Mar 2003 13:16:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4796

Never mind?  I think I was generally confused in my approach to this
problem - I think I may have a better idea now.

Sorry for any confusion or trouble this may have caused...
Srinivas

"Srinivas Panguluri"  wrote in message

> I have a question about when we've retransmitted an ARP request 5 or 6
times
> to no avail.
>
> ARP request x 6 for IP address A.A.A.A.  No luck (timed out 6 times).
>
>
> So, I'm sending an ICMP Destination Unreachable back to the original
sender
> of whatever packet caused me to need to use ARP, call this packet X.
>
> Thus, I look at the source address for X in IP's header, and I'm looking
in
> the routing table to find the next-hop, and find the next-hop IP.
>
> Now, what if my ARP cache does not have a hardware address corresponding
to
> this next-hop IP address?  Do I have to queue the ICMP packet, wait for an
> ARP reply, and then send the ICMP packet out?
>
> For some reason, I feel like this adds a ton of complexity to my code - is
> this the right track?
>
>


.

Path: shelby.stanford.edu!elaine21.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ARP header structure field alignment?
Date: Wed, 5 Mar 2003 08:01:09 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
  
 
 
NNTP-Posting-Host: elaine21.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046880070 19791 171.64.15.86 (5 Mar 2003 16:01:10 GMT)
X-Complaints-To: 
To: Eric Chenjian Xu 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4797


> I'm seeing a similar problem.
> Right after I made sure it's an ip packet in sr_handlepacket, I did
>
> struct sr_ethernet_hdr *ether_hdr
>   = (struct sr_ethernet_hdr*) packet;
>
> --- if ip packet ---
> printf("%x\n", ((struct ip*) (packet
>    + sizeof(struct sr_ethernet_hdr)))->ip_dst.s_addr);
>
> Then a seg fault was generated.
>
> ip_dst is the last field in struct ip and s_addr accesses the last field
> in struct in_addr, but the packet was freshly read, and I haven't done
> anything to the packet yet.
>
> I'm puzzled too.  Clues?
>
> Eric

 Have you looked at the faq # 24?

 /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: Re: FAQ updated
Date: Wed, 05 Mar 2003 11:29:20 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046892559 27308 128.12.91.22 (5 Mar 2003 19:29:19 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4798

Hi everyone,

I saw the new FAQs, and the answer that really surprised me was the one
telling us that we could only modify sr_router.c/h (except for bugfixes),
but we were free to add our own files.

I'd added some functions to sr_if.h/c that had to do with searching for
interfaces given something other than a string, an ICMP header struct and
some protocol-related constants to sr_protocol.h, and a route-finding
utility function to sr_rt.h/c.  I can put all of this stuff into other
places (and for now I have), but as someone who got docked points for my
code being too long on the last assignment, I'm kind of paranoid about
style. :)  It seemed like all of those functions really belonged in those
files...

Anyway, the other modification I'd made to the stub code was putting code
in the sr_destroy_instance function of sr_main.c to clean up memory I'd
allocated for my ARP cache.  There doesn't seem to be another way to get
this job done.  Is it OK to edit sr_main.c for such purposes?

Thanks,
Will Robinson

On Tue, 04 Mar 2003 08:51:55 -0800, Martin Casado 
wrote:


>  FYI
.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: Interesting Discussion on Source IP of Generated Packets
Date: Wed, 5 Mar 2003 13:12:21 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1046898742 1292 128.12.85.0 (5 Mar 2003 21:12:22 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4799


> >>So, the interface where to send the packet back out is consulted from
the
> >>routing table, because the packet doesn't necessarily go in & out
through
> >>the same interface. However, the source ip field in the IP header does
not
> >>necessarily the IP address of the interface to send the packet back out.
Is
> >>this correct?
> >>
> I assume you are talking about ICMP's here? It depends on the type:
> - For timeouts routers use either the incoming interface or the default
> (often the maintenance or lowest) interface.
> - For host/network unreachable use the default
> - For port unreachable and echo use the interface it was addressed to
>
>   Guido

Quick question: if we use the ip address of the default interface (that is,
a different ip), how will the end host know that such a packet reflects the
status of the ip address that the packet was actually sent to? That is, how
will it match the packet to its outgoing flow to that ip?


.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: FAQ updated
Date: Wed, 5 Mar 2003 13:26:51 -0800
Lines: 42
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046899613 1785 171.64.15.76 (5 Mar 2003 21:26:53 GMT)
X-Complaints-To: 
To: Will Robinson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4800


> Hi everyone,
>
> I saw the new FAQs, and the answer that really surprised me was the one
> telling us that we could only modify sr_router.c/h (except for bugfixes),
> but we were free to add our own files.

 Yeah .. I didn't anticipate this either, I incorrectly assumed everything was
 fair game.

>
> I'd added some functions to sr_if.h/c that had to do with searching for
> interfaces given something other than a string, an ICMP header struct and
> some protocol-related constants to sr_protocol.h, and a route-finding
> utility function to sr_rt.h/c.  I can put all of this stuff into other
> places (and for now I have), but as someone who got docked points for my
> code being too long on the last assignment, I'm kind of paranoid about
> style. :)  It seemed like all of those functions really belonged in those
> files...

 You will have to move these to new files.

> Anyway, the other modification I'd made to the stub code was putting code
> in the sr_destroy_instance function of sr_main.c to clean up memory I'd
> allocated for my ARP cache.  There doesn't seem to be another way to get
> this job done.  Is it OK to edit sr_main.c for such purposes?

 That is fine ..

 /mc


> Thanks,
> Will Robinson
>
> On Tue, 04 Mar 2003 08:51:55 -0800, Martin Casado 
> wrote:
>
>
> >  FYI
>

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Interesting Discussion on Source IP of Generated Packets
Date: Wed, 5 Mar 2003 13:30:54 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046899856 1912 171.64.15.76 (5 Mar 2003 21:30:56 GMT)
X-Complaints-To: 
To: Rene Patnode 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4801

On Wed, 5 Mar 2003, Rene Patnode wrote:

>
> > >>So, the interface where to send the packet back out is consulted from
> the
> > >>routing table, because the packet doesn't necessarily go in & out
> through
> > >>the same interface. However, the source ip field in the IP header does
> not
> > >>necessarily the IP address of the interface to send the packet back out.
> Is
> > >>this correct?
> > >>
> > I assume you are talking about ICMP's here? It depends on the type:
> > - For timeouts routers use either the incoming interface or the default
> > (often the maintenance or lowest) interface.
> > - For host/network unreachable use the default
> > - For port unreachable and echo use the interface it was addressed to
> >
> >   Guido
>
> Quick question: if we use the ip address of the default interface (that is,
> a different ip), how will the end host know that such a packet reflects the
> status of the ip address that the packet was actually sent to? That is, how
> will it match the packet to its outgoing flow to that ip?

 ICMP unreachable messages return the IP header and the first  8 bytes of the
 original datagram.

 /mc

.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: traceroute and Re: Interesting Discussion on Source IP of Generated Packets
Date: Wed, 5 Mar 2003 21:37:16 +0000 (UTC)
Organization: Stanford University
Lines: 37
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine26.stanford.edu
X-Trace: news.Stanford.EDU 1046900236 2095 171.64.15.101 (5 Mar 2003 21:37:16 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4802



If for timeouts we use the *incoming* interface then for  %traceroute userid-router-2 say
won't the last line of the traceroute read 

userid-router-*1* .....

If I use as the source the destination IP the traceroute will end with userid-router-2
which seems more natural.

In article 
 you write:
> 
> > >>So, the interface where to send the packet back out is consulted from
> the
> > >>routing table, because the packet doesn't necessarily go in & out
> through
> > >>the same interface. However, the source ip field in the IP header does
> not
> > >>necessarily the IP address of the interface to send the packet back out.
> Is
> > >>this correct?
> > >>
> > I assume you are talking about ICMP's here? It depends on the type:
> > - For timeouts routers use either the incoming interface or the default
> > (often the maintenance or lowest) interface.
> > - For host/network unreachable use the default
> > - For port unreachable and echo use the interface it was addressed to
> >
> >   Guido
> 
> Quick question: if we use the ip address of the default interface (that is,
> a different ip), how will the end host know that such a packet reflects the
> status of the ip address that the packet was actually sent to? That is, how
> will it match the packet to its outgoing flow to that ip?
> 
> 
.

Path: shelby.stanford.edu!elaine38.Stanford.EDU!brandon
From: Brandon Badger 
Newsgroups: su.class.cs244a
Subject: packet traffic through client
Date: Wed, 5 Mar 2003 13:57:19 -0800
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine38.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046901444 2751 171.64.15.113 (5 Mar 2003 21:57:24 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4803

Hi.

1)I receive the ARP Request
2)I reply to the ARP Request
3)when I ping www-brandon I start seeing IP packets
4)when I print out these IP packets that I'm getting, I'm seeing
unfamiliar IP addresses in both the ip_sip and ip_tip fields.  Shouldn't I only
initially see the packets sent by my ping with an ip_sip from elaine and
an ip_tip for www-brandon?


I know that it was mentioned that the dns lookup of www-brandon, etc,
won't work off campus, but If I type 192.168.128.124 (IP of www-brandon)
into my web browser off campus, should I be able to pull up the page?
When I do, my client doesn't start getting IP packets like it does in the
case of pinging www-brandon.


This is a basic question, but how do I run tcpdump?  I ran my client with
the '-l logfile' option.  When I try to run /usr/class/cs244a/tcpdump I
get the following error:

elaine19:~> /usr/class/cs244a/bin/tcpdump
tcpdump: /dev/eri: Permission denied


thanks,
Brandon

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: Interesting Discussion on Source IP of Generated Packets
Date: Wed, 5 Mar 2003 14:30:32 -0800
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046903433 3920 171.64.15.99 (5 Mar 2003 22:30:33 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4804

On Tue, 4 Mar 2003, Martin Casado wrote:

> >>>  I don't follow your logic.  I don't think it is valid to assume all
> >>>routs are  bidirectional .. just because you received a packet in one
> >>>interface does  not mean the same interface should be used to send the
> >>>packet back out...  I still maintain that the correct way to handle
> >>>replies is to consult the  routing table before determining the next
> >>>hop of packets generated at the  router.
> >>>
>
> Definitely true. Think about unidirectional links!!
>

I would think this only applies to IP packets. ARP packets
have to be sent through the original link they came from isn't
it? That's the whole purpose of ARP, finding out your MAC address
in that one link.

Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: "John C. Wu" 
Newsgroups: su.class.cs244a
Subject: Traceroute correct behavior?
Date: Wed, 5 Mar 2003 14:29:13 -0800
Lines: 40
Distribution: su
Message-ID: 
NNTP-Posting-Host: dn800cc208.stanford.edu
X-Trace: news.Stanford.EDU 1046903469 3927 128.12.194.8 (5 Mar 2003 22:31:09 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4805

Hi, I have a question about traceroute. When I run traceroute to my routers,
both the incoming (router-1) and the app-server connected (router-2,
router-3), I get the following responses:

The final response comes from router-1 on both. Is that correct behavior? Or
is there supposed to be an extra hop for router-2 when I traceroute to
router-2?

And right now, when I traceroute to either of the routers, I send back to
the source ICMP PORT UNREACHABLE packets, for both. Is that correct? Or am I
supposed to use type TIME EXCEEDED.

Please help! Thanks!  :D

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

epic5:~/class/cs244a/hw3> traceroute jcwu-router-1.stanford.edu
traceroute to jcwu-router-1.stanford.edu (192.168.128.33): 1-30 hops, 38
byte packets
 1  leland-gateway.Stanford.EDU (171.64.15.1)  1.63 ms  1.19 ms  1.30 ms
 2  smra-rtr.Stanford.EDU (171.64.1.236)  1.24 ms (ttl=63!)  1.33 ms
(ttl=63!)  1.18 ms (ttl=63!)
 3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.539 ms  0.818 ms  0.562 ms
 4  vr-firewall.Stanford.EDU (171.64.74.9)  0.491 ms  0.524 ms  0.445 ms
 5  jcwu-router-1.Stanford.EDU (192.168.128.33)  2.73 ms (ttl=250!)  2.45 ms
(ttl=250!)  2.69 ms (ttl=250!)

epic5:~/class/cs244a/hw3> traceroute jcwu-router-2.stanford.edu
traceroute to jcwu-router-2.stanford.edu (192.168.128.159): 1-30 hops, 38
byte packets
 1  leland-gateway.Stanford.EDU (171.64.15.1)  1.25 ms  1.00 ms  1.40 ms
 2  smra-rtr.Stanford.EDU (171.64.1.236)  1.71 ms (ttl=63!)  1.58 ms
(ttl=63!)  1.38 ms (ttl=63!)
 3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.458 ms  0.947 ms  0.451 ms
 4  vr-firewall.Stanford.EDU (171.64.74.9)  0.469 ms  0.521 ms  0.902 ms
 5  jcwu-router-1.Stanford.EDU (192.168.128.33)  2.41 ms (ttl=250!)  2.67 ms
(ttl=250!)  3.01 ms (ttl=250!)



.

Path: shelby.stanford.edu!not-for-mail
From: Akash Jain 
Newsgroups: su.class.cs244a
Subject: Re: packet traffic through client
Date: Wed, 5 Mar 2003 23:19:19 +0000 (UTC)
Organization: Stanford University
Lines: 38
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: dnab4082a9.stanford.edu
Content-Type: text/plain; charset="ISO-8859-15"
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046906359 5684 171.64.130.169 (5 Mar 2003 23:19:19 GMT)
X-Complaints-To: 
User-Agent: Halime (MacOSX)/1.0rc1
Xref: shelby.stanford.edu su.class.cs244a:4806

In  
Brandon Badger  wrote:
> Hi.
> 
> 1)I receive the ARP Request
> 2)I reply to the ARP Request
> 3)when I ping www-brandon I start seeing IP packets
> 4)when I print out these IP packets that I'm getting, I'm seeing
> unfamiliar IP addresses in both the ip_sip and ip_tip fields.  
> Shouldn't I only initially see the packets sent by my ping with an ip_
> sip from elaine and an ip_tip for www-brandon?

me thinks you should.

> I know that it was mentioned that the dns lookup of www-brandon, etc,
> won't work off campus, but If I type 192.168.128.124 (IP of www-
> brandon) into my web browser off campus, should I be able to pull up 
> the page? When I do, my client doesn't start getting IP packets like 
> it does in the case of pinging www-brandon.

No it should, the 192.168.x.x series are non-routable addresses, i.e. 
internet routers don't actually pass them from one subnet to another.  
The reason they work at Stanford is that we are one large LAN, and the 
routers allow this type of traffic to get from sweet hall to gates, etc...
 
> This is a basic question, but how do I run tcpdump?  I ran my client 
> with the '-l logfile' option.  When I try to run /usr/class/cs244a/
> tcpdump I get the following error:
>
> elaine19:~> /usr/class/cs244a/bin/tcpdump
> tcpdump: /dev/eri: Permission denied

I've just been using the -l option with sr, and using ethereal to play 
stuff back, I don't think non-root users can run tcpdump because it 
gives them access to all traffic entering the interface....

-aki-
not a ta
.

Message-ID: 
From: "Brandon Badger" 
To: 
Subject: tcpdump - 2 bytes missing in IP packet???
Date: Wed, 05 Mar 2003 15:21:28 -0800
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0089_01C2E32B.1513E740"
X-Priority: 3
X-Msmail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4522.1200
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200
Lines: 239
Newsgroups: su.class.cs244a
Organization: Stanford University Posting Gateway (mailtonews 1.3/0.42)
Path: shelby.stanford.edu!mail-to-news!smtp2.stanford.edu
Sender: 
X-Mail-Path: 
X-Original-Date: Wed, 5 Mar 2003 15:22:49 -0800
X-Original-Message-ID: 
Xref: shelby.stanford.edu su.class.cs244a:4807


This is a multi-part message in MIME format.

------=_NextPart_000_0089_01C2E32B.1513E740
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

In the tcpdump output I see the following "2 bytes missing error."  Is =
this
a problem with the IP packet that I am receiving?  If so, what can I do
about this?

14:56:48.855865 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU > =
www
-brandon.Stanford.EDU: icmp: echo request (DF)

Is there a problem with my arp request?=20
14:56:48.857286 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)

The arp request to me and my arp reply seem to be correct.  When I ping
'www-brandon' I start getting IP packets.  The source address that I'm
getting in the first couple IP packets is 0.0.0.0.  Is this correct?  Is =
it
caused by that previous "2 bytes missing" error?  Later on I get an IP
packet from 227.40.8.9 and I send out an arp request for that address...
I'm not getting any replies.

Shouldn't the IP packets that I'm getting be destined for 'www-brandon'
since that's who I pinged?

thanks for any guidance you can give,
Brandon

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

elaine27Command?:~/cs244a/hw3> tcpdump -r logfile
14:56:47.369918 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
14:56:47.742630 arp who-has tjruwase-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
14:56:48.369990 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
14:56:48.853134 arp who-has brandon-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
14:56:48.854125 arp reply brandon-router-1.Stanford.EDU (70:0:0:a:0:1) =
is-at
70:0:0:a:0:1
14:56:48.855865 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
www-brandon.Stanford.EDU: icmp: echo request (DF)
14:56:48.857286 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:48.857426 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:48.857522 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:49.081541 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:49.540914 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:49.633866 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:49.634343 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
14:56:49.847616 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
www-brandon.Stanford.EDU: icmp: echo request (DF)
14:56:49.849276 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:49.849435 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:49.849539 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:50.531860 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:50.533278 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
14:56:50.634441 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:50.635068 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
(70:0:0:a:0:1)
14:56:50.847393 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
www-brandon.Stanford.EDU: icmp: echo request (DF)
14:56:50.849042 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:50.849206 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:50.849304 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:51.652136 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:51.653919 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
14:56:51.753669 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:51.754044 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:51.853320 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
www-brandon.Stanford.EDU: icmp: echo request (DF)
14:56:51.854822 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:51.854975 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
14:56:51.855074 arp who-has 227.40.8.9 tell
brandon-router-1.Stanford.EDU(70:0:0:a:0:1)




------=_NextPart_000_0089_01C2E32B.1513E740
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.3315.2870" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>In the tcpdump output I see the =
following "2 bytes=20
missing error."  Is this<BR>a problem with the IP packet that I am=20
receiving?  If so, what can I do<BR>about =
this?<BR><BR>14:56:48.855865=20
truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >=20
www<BR>-brandon.Stanford.EDU: icmp: echo request (DF)<BR><BR>Is there a =
problem=20
with my arp request? <BR>14:56:48.857286 arp who-has 0.0.0.0 tell=20
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR><BR>The arp request =
to me and=20
my arp reply seem to be correct.  When I ping<BR>'www-brandon' I =
start=20
getting IP packets.  The source address that I'm<BR>getting in the =
first=20
couple IP packets is 0.0.0.0.  Is this correct?  Is =
it<BR>caused by=20
that previous "2 bytes missing" error?  Later on I get an =
IP<BR>packet from=20
227.40.8.9 and I send out an arp request for that =
address...</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>I'm not getting any =
replies.<BR><BR>Shouldn't the=20
IP packets that I'm getting be destined for 'www-brandon'<BR>since =
that's who I=20
pinged?<BR><BR>thanks for any guidance you can=20
give,<BR>Brandon<BR><BR>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D<BR><BR>elaine27Command?:~/cs244a/hw3>=20
tcpdump -r logfile<BR>14:56:47.369918 arp who-has =
ssho-router-1.Stanford.EDU=20
tell<BR>vr-firewall.Stanford.EDU<BR>14:56:47.742630 arp who-has=20
tjruwase-router-1.Stanford.EDU=20
tell<BR>vr-firewall.Stanford.EDU<BR>14:56:48.369990 arp who-has=20
ssho-router-1.Stanford.EDU =
tell<BR>vr-firewall.Stanford.EDU<BR>14:56:48.853134=20
arp who-has brandon-router-1.Stanford.EDU=20
tell<BR>vr-firewall.Stanford.EDU<BR>14:56:48.854125 arp reply=20
brandon-router-1.Stanford.EDU (70:0:0:a:0:1)=20
is-at<BR>70:0:0:a:0:1<BR>14:56:48.855865 truncated-ip - 2 bytes=20
missing!elaine19.Stanford.EDU ><BR>www-brandon.Stanford.EDU: icmp: =
echo=20
request (DF)<BR>14:56:48.857286 arp who-has 0.0.0.0 tell=20
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:48.857426 arp =
who-has=20
0.0.0.0 tell =
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:48.857522=20
arp who-has 0.0.0.0 tell=20
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:49.081541 arp =
who-has=20
0.0.0.0 tell =
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:49.540914=20
arp who-has 0.0.0.0 tell=20
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:49.633866 arp =
who-has=20
0.0.0.0 tell =
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:49.634343=20
arp who-has ssho-router-1.Stanford.EDU=20
tell<BR>vr-firewall.Stanford.EDU<BR>14:56:49.847616 truncated-ip - 2 =
bytes=20
missing!elaine19.Stanford.EDU ><BR>www-brandon.Stanford.EDU: icmp: =
echo=20
request (DF)<BR>14:56:49.849276 arp who-has 0.0.0.0 tell=20
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:49.849435 arp =
who-has=20
0.0.0.0 tell =
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:49.849539=20
arp who-has 0.0.0.0 tell=20
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:50.531860 arp =
who-has=20
0.0.0.0 tell =
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:50.533278=20
arp who-has ssho-router-1.Stanford.EDU=20
tell<BR>vr-firewall.Stanford.EDU<BR>14:56:50.634441 arp who-has 0.0.0.0 =
tell=20
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:50.635068 arp =
who-has=20
0.0.0.0 tell =
brandon-router-1.Stanford.EDU<BR>(70:0:0:a:0:1)<BR>14:56:50.847393=20
truncated-ip - 2 bytes missing!elaine19.Stanford.EDU=20
><BR>www-brandon.Stanford.EDU: icmp: echo request =
(DF)<BR>14:56:50.849042 arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:50.849206 =
arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:50.849304 =
arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:51.652136 =
arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:51.653919 =
arp=20
who-has ssho-router-1.Stanford.EDU=20
tell<BR>vr-firewall.Stanford.EDU<BR>14:56:51.753669 arp who-has =
227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:51.754044 =
arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:51.853320=20
truncated-ip - 2 bytes missing!elaine19.Stanford.EDU=20
><BR>www-brandon.Stanford.EDU: icmp: echo request =
(DF)<BR>14:56:51.854822 arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:51.854975 =
arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR>14:56:51.855074 =
arp=20
who-has 227.40.8.9=20
tell<BR>brandon-router-1.Stanford.EDU(70:0:0:a:0:1)<BR><BR><BR></DIV></FO=
NT></BODY></HTML>

------=_NextPart_000_0089_01C2E32B.1513E740--
.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Interesting Discussion on Source IP of Generated Packets
Date: Wed, 5 Mar 2003 15:27:10 -0800
Lines: 25
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046906831 6020 171.64.15.76 (5 Mar 2003 23:27:11 GMT)
X-Complaints-To: 
To: Rafael M Hernandez 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4808


> On Tue, 4 Mar 2003, Martin Casado wrote:
>
> > >>>  I don't follow your logic.  I don't think it is valid to assume all
> > >>>routs are  bidirectional .. just because you received a packet in one
> > >>>interface does  not mean the same interface should be used to send the
> > >>>packet back out...  I still maintain that the correct way to handle
> > >>>replies is to consult the  routing table before determining the next
> > >>>hop of packets generated at the  router.
> > >>>
> >
> > Definitely true. Think about unidirectional links!!
> >
>
> I would think this only applies to IP packets. ARP packets
> have to be sent through the original link they came from isn't
> it? That's the whole purpose of ARP, finding out your MAC address
> in that one link.
>

 Agreed .. however ARP packets are not routed and thus not a concern with
 regards to this topic.

 /mc

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: packet traffic through client
Date: Wed, 5 Mar 2003 16:51:35 -0800
Lines: 42
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046911897 10757 171.64.15.76 (6 Mar 2003 00:51:37 GMT)
X-Complaints-To: 
To: Brandon Badger 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4809


> Hi.
>
> 1)I receive the ARP Request
> 2)I reply to the ARP Request
> 3)when I ping www-brandon I start seeing IP packets
> 4)when I print out these IP packets that I'm getting, I'm seeing
> unfamiliar IP addresses in both the ip_sip and ip_tip fields.  Shouldn't I only
> initially see the packets sent by my ping with an ip_sip from elaine and
> an ip_tip for www-brandon?

 Depends on what you are arping .. from the traffic I've seen on the system
 your arps are incorrect .. perhaps you should provide a tcpdump

>
> I know that it was mentioned that the dns lookup of www-brandon, etc,
> won't work off campus, but If I type 192.168.128.124 (IP of www-brandon)
> into my web browser off campus, should I be able to pull up the page?
> When I do, my client doesn't start getting IP packets like it does in the
> case of pinging www-brandon.
>

you cannot do this from off campus .. you would have to run your web browser
from the elaines.

> This is a basic question, but how do I run tcpdump?  I ran my client with
> the '-l logfile' option.  When I try to run /usr/class/cs244a/tcpdump I
> get the following error:

 look at item 2 in the faq

 /mc

> elaine19:~> /usr/class/cs244a/bin/tcpdump
> tcpdump: /dev/eri: Permission denied
>
>
> thanks,
> Brandon
>
>

.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: tcpdump - 2 bytes missing in IP packet???
Date: Wed, 5 Mar 2003 16:54:57 -0800
Lines: 114
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046912103 10888 171.64.15.76 (6 Mar 2003 00:55:03 GMT)
X-Complaints-To: 
To: Brandon Badger 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4810



> In the tcpdump output I see the following "2 bytes missing error."  Is this
> a problem with the IP packet that I am receiving?  If so, what can I do
> about this?
>
> 14:56:48.855865 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU > www
> -brandon.Stanford.EDU: icmp: echo request (DF)

 This is most likely the packet dump length .. check item #23 of the FAQ. and
 the newsgroup logs, this has been discussed at length.

> Is there a problem with my arp request?
> 14:56:48.857286 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)

 yup, arped adress is incorrect.


> The arp request to me and my arp reply seem to be correct.  When I ping
> 'www-brandon' I start getting IP packets.  The source address that I'm
> getting in the first couple IP packets is 0.0.0.0.  Is this correct?  Is it
> caused by that previous "2 bytes missing" error?  Later on I get an IP
> packet from 227.40.8.9 and I send out an arp request for that address...
> I'm not getting any replies.

not that is not the problem there is a big somewhere in your code.

>
> Shouldn't the IP packets that I'm getting be destined for 'www-brandon'
> since that's who I pinged?

what is your topology number, I will test it to see if everything is set up
correctly.

/mc

> thanks for any guidance you can give,
> Brandon
>
> ===========================================
>
> elaine27Command?:~/cs244a/hw3> tcpdump -r logfile
> 14:56:47.369918 arp who-has ssho-router-1.Stanford.EDU tell
> vr-firewall.Stanford.EDU
> 14:56:47.742630 arp who-has tjruwase-router-1.Stanford.EDU tell
> vr-firewall.Stanford.EDU
> 14:56:48.369990 arp who-has ssho-router-1.Stanford.EDU tell
> vr-firewall.Stanford.EDU
> 14:56:48.853134 arp who-has brandon-router-1.Stanford.EDU tell
> vr-firewall.Stanford.EDU
> 14:56:48.854125 arp reply brandon-router-1.Stanford.EDU (70:0:0:a:0:1) is-at
> 70:0:0:a:0:1
> 14:56:48.855865 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
> www-brandon.Stanford.EDU: icmp: echo request (DF)
> 14:56:48.857286 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:48.857426 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:48.857522 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:49.081541 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:49.540914 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:49.633866 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:49.634343 arp who-has ssho-router-1.Stanford.EDU tell
> vr-firewall.Stanford.EDU
> 14:56:49.847616 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
> www-brandon.Stanford.EDU: icmp: echo request (DF)
> 14:56:49.849276 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:49.849435 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:49.849539 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:50.531860 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:50.533278 arp who-has ssho-router-1.Stanford.EDU tell
> vr-firewall.Stanford.EDU
> 14:56:50.634441 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:50.635068 arp who-has 0.0.0.0 tell brandon-router-1.Stanford.EDU
> (70:0:0:a:0:1)
> 14:56:50.847393 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
> www-brandon.Stanford.EDU: icmp: echo request (DF)
> 14:56:50.849042 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:50.849206 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:50.849304 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:51.652136 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:51.653919 arp who-has ssho-router-1.Stanford.EDU tell
> vr-firewall.Stanford.EDU
> 14:56:51.753669 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:51.754044 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:51.853320 truncated-ip - 2 bytes missing!elaine19.Stanford.EDU >
> www-brandon.Stanford.EDU: icmp: echo request (DF)
> 14:56:51.854822 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:51.854975 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
> 14:56:51.855074 arp who-has 227.40.8.9 tell
> brandon-router-1.Stanford.EDU(70:0:0:a:0:1)
>
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: Re: icmp host unreachable
Date: Wed, 05 Mar 2003 17:08:54 -0800
Lines: 49
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046912934 11426 128.12.91.22 (6 Mar 2003 01:08:54 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4811

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Mon, 03 Mar 2003 22:55:23 -0800, Sheila Patel 
wrote:

> Hi,
> 
> My ICMP port unreachable seems to work fine; however, the ICMP host 
> unreachable does not.  Similar to what Martin mentioned in a previous 
> post, I ignore incoming ARP replies in order to test this.

I'd also like to test my "host unreachable" functionality.  However, I'm
confused as to Martin's way to test this.  As I've currently got things
implemented, if I ignore all incoming ARP replies, the following will
happen if I try to ping wsr23-router-1:

1) Echo request reaches firewall, which ARPs for my router's address
2) My router responds to the ARP
3) Firewall sends the ICMP echo request to my router
4) My router sees that it's an echo request and prepares a response
5) My router consults its routing table, and finds that the next hop
   for the outgoing echo response is out of eth0, and the IP address
   of the next hop is the firewall's IP address.
6) My router checks its ARP cache and doesn't find the firewall's IP
   address there.
7) My router ARPs from eth0 for the firewall's ethernet address.
8) The firewall responds to all 6 of the ARPs that my router eventually
   sends, but my router ignores all of those responses.
9) Eventually, my router decides to send a "Host Unreachable" message 
   back to the source of the ECHO response, but sees that this source 
   is itself, and so does nothing.

I can think of different ways to test the "Host Unreachable" functionality
(like ignoring all ARP replies except those coming from the firewall), but
before I go ahead with that, I want to know if my understanding is messed
up in any other way...

Thanks,
Will

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+Zp+U4uIcqiwjnrURAp47AJsH3EZjrYSi8zbvqdKAMaW4zvULlgCfZ9p5
Sfm27Mu0qIAsPNTq7hHgJLg=
=7BJ5
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!elaine33.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: traceroute and Re: Interesting Discussion on Source IP of
 Generated Packets
Date: Wed, 5 Mar 2003 17:27:31 -0800
Lines: 59
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: elaine33.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046914053 12051 171.64.15.108 (6 Mar 2003 01:27:33 GMT)
X-Complaints-To: 
To: David Seetapun 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4812

>
>
> If for timeouts we use the *incoming* interface then for  %traceroute userid-router-2 say
> won't the last line of the traceroute read
>
> userid-router-*1* .....

 I don't know I've never tested this.. however, since traceroute uses UDP
 packets the last hop should return a PORT UNREACH..

 this from the traceroute source code:

 * Attempt to trace the route an ip packet would follow to some
 * internet host.  We find out intermediate hops by launching probe
 * packets with a small ttl (time to live) then listening for an
 * icmp "time exceeded" reply from a gateway.  We start our probes
 * with a ttl of one and increase by one until we get an icmp "port
 * unreachable"

 For port unreach you use the interface the packet was addressed to.

 /mc

>
> If I use as the source the destination IP the traceroute will end with userid-router-2
> which seems more natural.




> In article 
>  you write:
> >
> > > >>So, the interface where to send the packet back out is consulted from
> > the
> > > >>routing table, because the packet doesn't necessarily go in & out
> > through
> > > >>the same interface. However, the source ip field in the IP header does
> > not
> > > >>necessarily the IP address of the interface to send the packet back out.
> > Is
> > > >>this correct?
> > > >>
> > > I assume you are talking about ICMP's here? It depends on the type:
> > > - For timeouts routers use either the incoming interface or the default
> > > (often the maintenance or lowest) interface.
> > > - For host/network unreachable use the default
> > > - For port unreachable and echo use the interface it was addressed to
> > >
> > >   Guido
> >
> > Quick question: if we use the ip address of the default interface (that is,
> > a different ip), how will the end host know that such a packet reflects the
> > status of the ip address that the packet was actually sent to? That is, how
> > will it match the packet to its outgoing flow to that ip?
> >
> >
>

.

Path: shelby.stanford.edu!elaine33.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Traceroute correct behavior?
Date: Wed, 5 Mar 2003 17:28:24 -0800
Lines: 48
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine33.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046914106 12071 171.64.15.108 (6 Mar 2003 01:28:26 GMT)
X-Complaints-To: 
To: "John C. Wu" 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4813


> Hi, I have a question about traceroute. When I run traceroute to my routers,
> both the incoming (router-1) and the app-server connected (router-2,
> router-3), I get the following responses:
>
> The final response comes from router-1 on both. Is that correct behavior? Or
> is there supposed to be an extra hop for router-2 when I traceroute to
> router-2?
>
> And right now, when I traceroute to either of the routers, I send back to
> the source ICMP PORT UNREACHABLE packets, for both. Is that correct? Or am I
> supposed to use type TIME EXCEEDED.
>
> Please help! Thanks!  :D

 Are you sure you are using the correct source address for the PORT
 UNREACHABLE?  see my response to David's question.

 /mc

> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>
> epic5:~/class/cs244a/hw3> traceroute jcwu-router-1.stanford.edu
> traceroute to jcwu-router-1.stanford.edu (192.168.128.33): 1-30 hops, 38
> byte packets
>  1  leland-gateway.Stanford.EDU (171.64.15.1)  1.63 ms  1.19 ms  1.30 ms
>  2  smra-rtr.Stanford.EDU (171.64.1.236)  1.24 ms (ttl=63!)  1.33 ms
> (ttl=63!)  1.18 ms (ttl=63!)
>  3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.539 ms  0.818 ms  0.562 ms
>  4  vr-firewall.Stanford.EDU (171.64.74.9)  0.491 ms  0.524 ms  0.445 ms
>  5  jcwu-router-1.Stanford.EDU (192.168.128.33)  2.73 ms (ttl=250!)  2.45 ms
> (ttl=250!)  2.69 ms (ttl=250!)
>
> epic5:~/class/cs244a/hw3> traceroute jcwu-router-2.stanford.edu
> traceroute to jcwu-router-2.stanford.edu (192.168.128.159): 1-30 hops, 38
> byte packets
>  1  leland-gateway.Stanford.EDU (171.64.15.1)  1.25 ms  1.00 ms  1.40 ms
>  2  smra-rtr.Stanford.EDU (171.64.1.236)  1.71 ms (ttl=63!)  1.58 ms
> (ttl=63!)  1.38 ms (ttl=63!)
>  3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.458 ms  0.947 ms  0.451 ms
>  4  vr-firewall.Stanford.EDU (171.64.74.9)  0.469 ms  0.521 ms  0.902 ms
>  5  jcwu-router-1.Stanford.EDU (192.168.128.33)  2.41 ms (ttl=250!)  2.67 ms
> (ttl=250!)  3.01 ms (ttl=250!)
>
>
>
>

.

Path: shelby.stanford.edu!elaine33.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: icmp host unreachable
Date: Wed, 5 Mar 2003 17:34:24 -0800
Lines: 66
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine33.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046914465 12299 171.64.15.108 (6 Mar 2003 01:34:25 GMT)
X-Complaints-To: 
To: Will Robinson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4814


> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Mon, 03 Mar 2003 22:55:23 -0800, Sheila Patel 
> wrote:
>
> > Hi,
> >
> > My ICMP port unreachable seems to work fine; however, the ICMP host
> > unreachable does not.  Similar to what Martin mentioned in a previous
> > post, I ignore incoming ARP replies in order to test this.
> >

 you only ignore ARP replies from the host your are trying to test... (aka app
 server 1 or 2).  Be sure to use ping to test this as it will print out when it
 has recieved a host unreach.

>
> I'd also like to test my "host unreachable" functionality.  However, I'm
> confused as to Martin's way to test this.  As I've currently got things
> implemented, if I ignore all incoming ARP replies, the following will
> happen if I try to ping wsr23-router-1:
>
> 1) Echo request reaches firewall, which ARPs for my router's address
> 2) My router responds to the ARP
> 3) Firewall sends the ICMP echo request to my router
> 4) My router sees that it's an echo request and prepares a response
> 5) My router consults its routing table, and finds that the next hop
>    for the outgoing echo response is out of eth0, and the IP address
>    of the next hop is the firewall's IP address.
> 6) My router checks its ARP cache and doesn't find the firewall's IP
>    address there.
> 7) My router ARPs from eth0 for the firewall's ethernet address.
> 8) The firewall responds to all 6 of the ARPs that my router eventually
>    sends, but my router ignores all of those responses.
> 9) Eventually, my router decides to send a "Host Unreachable" message
>    back to the source of the ECHO response, but sees that this source
>    is itself, and so does nothing.

testing HOST unreach for the default gateway would be difficult .. don't worry
about that.  Simply point ping at one of the app servers, and drop all
arp replies from the app server.  Ping should report that a host unreachable
error was generated.

/mc

> I can think of different ways to test the "Host Unreachable" functionality
> (like ignoring all ARP replies except those coming from the firewall), but
> before I go ahead with that, I want to know if my understanding is messed
> up in any other way...


> Thanks,
> Will
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.1 (GNU/Linux)
>
> iD8DBQE+Zp+U4uIcqiwjnrURAp47AJsH3EZjrYSi8zbvqdKAMaW4zvULlgCfZ9p5
> Sfm27Mu0qIAsPNTq7hHgJLg=
> =7BJ5
> -----END PGP SIGNATURE-----
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Alexander Fontana" 
Newsgroups: su.class.cs244a
Subject: submission rules
Date: Wed, 5 Mar 2003 17:56:16 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: dnab408dd8.stanford.edu
X-Trace: news.Stanford.EDU 1046916071 13600 171.64.141.216 (6 Mar 2003 02:01:11 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4815

Just to be clear about the submission rules for this assignment....

Are we allowed to edit any/all of the files in the stub code?  Including the
Makefile?

Are we allowed to add whatever new files to our submission directory that we
would like to add?

I didn't notice anything that said otherwise, but I just want to be sure.

Thanks,
Alex


.

Path: shelby.stanford.edu!elaine33.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Wed, 5 Mar 2003 18:35:25 -0800
Lines: 22
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine33.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046918128 14803 171.64.15.108 (6 Mar 2003 02:35:28 GMT)
X-Complaints-To: 
To: Alexander Fontana 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4816


> Just to be clear about the submission rules for this assignment....
>
> Are we allowed to edit any/all of the files in the stub code?  Including the
> Makefile?
>
> Are we allowed to add whatever new files to our submission directory that we
> would like to add?
>
> I didn't notice anything that said otherwise, but I just want to be sure.

 see item 23 of the faq

 /mc

>
> Thanks,
> Alex
>
>
>

.

Path: shelby.stanford.edu!elaine28.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Wed, 5 Mar 2003 18:37:42 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine28.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046918263 14905 171.64.15.103 (6 Mar 2003 02:37:43 GMT)
X-Complaints-To: 
To: Alexander Fontana 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4817


>
> > Just to be clear about the submission rules for this assignment....
> >
> > Are we allowed to edit any/all of the files in the stub code?  Including the
> > Makefile?
> >
> > Are we allowed to add whatever new files to our submission directory that we
> > would like to add?
> >
> > I didn't notice anything that said otherwise, but I just want to be sure.
>
>  see item 23 of the faq

 Correction ... that is item 26 .. sorry

 /mc

.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Wed, 5 Mar 2003 22:14:56 -0800
Lines: 28
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046931299 24089 171.64.15.81 (6 Mar 2003 06:14:59 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4818


an earlier posting on the newsgroup had mentioned that it was ok to change
any file.

why have the TAs decided against it now?

On Wed, 5 Mar 2003, Martin Casado wrote:

>
> >
> > > Just to be clear about the submission rules for this assignment....
> > >
> > > Are we allowed to edit any/all of the files in the stub code?  Including the
> > > Makefile?
> > >
> > > Are we allowed to add whatever new files to our submission directory that we
> > > would like to add?
> > >
> > > I didn't notice anything that said otherwise, but I just want to be sure.
> >
> >  see item 23 of the faq
>
>  Correction ... that is item 26 .. sorry
>
>  /mc
>
>

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: ping misbehaving
Date: Wed, 5 Mar 2003 23:08:47 -0800
Lines: 152
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046934530 26347 171.64.15.99 (6 Mar 2003 07:08:50 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4819

Hi,
I was wondering if anybody has experimented this problem/behavior.
When I ping my router interfaces sometimes it works ok and sometimes
ping hangs (after 2 echo requests I don't receive any more requests)

These 2 outputs were done sequentially without any change of
my code:

This first one is correct

elaine24:~/class/cs244a/hw3/sr_stub> ping 192.168.128.67
PING rhm-router-1.Stanford.EDU (192.168.128.67): 56 data bytes
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=0 ttl=60
time=-1107350.-721 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=1 ttl=60
time=-1106360.-322 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=2 ttl=60
time=-1105360.-729 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=3 ttl=60
time=-1104359.-866 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=4 ttl=60
time=-1103360.-015 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=5 ttl=60
time=-1102360.-152 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=6 ttl=60
time=-1101254.-656 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=7 ttl=60
time=-1100269.-953 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=8 ttl=60
time=-1099271.-338 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=9 ttl=60
time=-1098360.-947 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=10 ttl=60
time=-1097360.-101 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=11 ttl=60
time=-1096360.-431 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=12 ttl=60
time=-1095360.-136 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=13 ttl=60
time=-1094359.-756 ms.
^C


I interrupted this after a long wait.
Using ethereal to look at the logfile I only get 2 echo requests
that I reply to and then I just don't get any more packets from ping.


---- rhm-router-1.Stanford.EDU (192.168.128.67) PING Statistics ----
14 packets transmitted, 14 packets received, 0% packet loss
round-trip (ms) min/avg/max = -1107350.-721/-1100839.-223/0.000 (std =
4032)
elaine24:~/class/cs244a/hw3/sr_stub> ping 192.168.128.67
PING rhm-router-1.Stanford.EDU (192.168.128.67): 56 data bytes
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=0 ttl=60
time=2146000 ms.
64 bytes from rhm-router-1.Stanford.EDU (192.168.128.67): seq=1 ttl=60
time=2146000 ms.
^C


This is the log from tcpdump

elaine24:~/class/cs244a/hw3/sr_stub> ./tcpdump -r logfile
22:54:11.164690 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:12.158193 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:13.117997 elaine24.Stanford.EDU > rhm-router-2.Stanford.EDU: icmp:
echo request (DF)
22:54:13.118308 arp who-has vr-firewall.Stanford.EDU tell
rhm-router-1.Stanford.EDU hardware #6
22:54:13.119751 arp reply vr-firewall.Stanford.EDU is-at 0:e0:81:3:fd:9e
22:54:13.119901 rhm-router-2.Stanford.EDU > elaine24.Stanford.EDU: icmp:
echo reply
22:54:13.158390 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:14.116322 elaine24.Stanford.EDU > rhm-router-2.Stanford.EDU: icmp:
echo request (DF)
22:54:14.116648 rhm-router-2.Stanford.EDU > elaine24.Stanford.EDU: icmp:
echo reply
22:54:14.163357 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:15.158890 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:16.159146 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:17.213876 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:18.209545 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:19.108116 arp who-has rhm-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:19.108333 arp reply rhm-router-1.Stanford.EDU is-at 70:0:0:3e:0:1
(70:0:0:3e:0:1) hardware #6
22:54:19.209772 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:21.225856 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:22.220720 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:23.221580 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:24.241217 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:25.232929 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:26.233782 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:27.277344 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:28.242619 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:29.243109 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:32.103764 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:32.943869 arp who-has brandon-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:33.093796 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:33.303472 arp who-has jamfan-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:33.943732 arp who-has brandon-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:34.093474 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:34.303531 arp who-has jamfan-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:34.943839 arp who-has brandon-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:35.218868 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:35.315426 arp who-has jamfan-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:36.214845 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:37.214199 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:38.301869 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU
22:54:39.295200 arp who-has ssho-router-1.Stanford.EDU tell
vr-firewall.Stanford.EDU


So why is ping hung up? and why am I getting all this
ARP requests from other people?

Any ideas would be appreciated.
Rafa


.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Wed, 5 Mar 2003 23:11:00 -0800
Lines: 42
Distribution: su
Message-ID: 
References: 
 
 
 
NNTP-Posting-Host: elaine16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046934664 26472 171.64.15.81 (6 Mar 2003 07:11:04 GMT)
X-Complaints-To: 
To: Priyanka Gupta 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4820


>
> an earlier posting on the newsgroup had mentioned that it was ok to change
> any file.
>
> why have the TAs decided against it now?

 I was under the incorrect assumption that all files were free game for
 modification and none of the TAs caught the post.  The current view is that
 for submissions we will grudgingly accept small modifications to all files
 except sr_vns_comm.c which cannot be touched.  All other supporting
 methods/changes should be in sr_router[h,c] or files you've added yourself.

 I apologize for this mixup :-(

 /mc

>
> On Wed, 5 Mar 2003, Martin Casado wrote:
>
> >
> > >
> > > > Just to be clear about the submission rules for this assignment....
> > > >
> > > > Are we allowed to edit any/all of the files in the stub code?  Including the
> > > > Makefile?
> > > >
> > > > Are we allowed to add whatever new files to our submission directory that we
> > > > would like to add?
> > > >
> > > > I didn't notice anything that said otherwise, but I just want to be sure.
> > >
> > >  see item 23 of the faq
> >
> >  Correction ... that is item 26 .. sorry
> >
> >  /mc
> >
> >
>
>

.

Path: shelby.stanford.edu!elaine29.Stanford.EDU!inspire
From: Toliver Jue 
Newsgroups: su.class.cs244a
Subject: sr_router.h error
Date: Wed, 5 Mar 2003 23:13:30 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine29.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046934812 26535 171.64.15.104 (6 Mar 2003 07:13:32 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4821

sr_router.h needs to include stdio.h, since it uses the FILE structure.
Perhaps it is corrected already, but at least in the copy I have, it
isn't.


.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: traceroute output and ftp results
Date: Wed, 5 Mar 2003 23:22:09 -0800
Lines: 40
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046935331 26851 171.64.15.99 (6 Mar 2003 07:22:11 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4822

Hi,

1.-
Because traceroute uses UDP when I do traceroute against our interfaces
I'm sending two ICMP messages to traceroute:
one because of TTL=0 and another with PORT UNREACHABLE.

As a result traceroute will output:
elaine24:~/class/cs244a/hw3/sr_stub> traceroute rhm-router-2
traceroute to rhm-router-2.Stanford.EDU (192.168.128.227): 1-30 hops, 38
byte packets
 1  leland-gateway.Stanford.EDU (171.64.15.97)  1.66 ms  1.83 ms  1.15 ms
 2  smra-rtr.Stanford.EDU (171.64.1.236)  1.90 ms (ttl=63!)  1.86 ms
(ttl=63!)  1.59 ms (ttl=63!)
 3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.849 ms  0.960 ms  1.12 ms
 4  vr-firewall.Stanford.EDU (171.64.74.9)  0.861 ms  1.19 ms  1.18 ms
 5  rhm-router-2.Stanford.EDU (192.168.128.227)  6.15 ms (ttl=60!) !A
42.6 ms (ttl=60!) !A  2.01 ms (ttl=60!) !A

According to the traceroute man page

 !A    Some routers fail to generate an ICMP  "port  unreach-
           able"  message,  but send an ICMP "time exceeded" mes-
           sage instead, if they are the target host. The indica-
           tor is printed if this is detected.

so it seems like we should only send a port unreachable and not a
time exceeded but I'm wondering why do we have to treat this
as an special case? Or is there any precedence established for
ICMP messages that I'm missing here?


2.-
What is the checksum we should get for the download_me.au once we
have downloaded it?

Thanks

Rafa

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: question about FAQ #27
Date: Wed, 05 Mar 2003 23:43:01 -0800
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046936581 27643 128.12.91.22 (6 Mar 2003 07:43:01 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4823

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi again,

FAQ #27 says:

 You have to support two cases:
    * Routes where the next hop is explicitly stated.
    * Routes where the next hop is '0.0.0.0' which denotes that all
      matches to this route lie in the collision domain of the interface
      associated with the route. In this case, the next hop is the
      destination address of the IP packet.

Just so I'm completely clear, which entry in the routing table would the
"next hop" you're talking about correspond to?  Is it "ip," like the entry
for the default gateway that we were given?  Or could gateway entry itself
be "0.0.0.0"?

Thanks,
Will
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+Zvvw4uIcqiwjnrURAtfFAJ0a2yFGzfNrNuR24ZsTuRvFrlkKCwCgwNv9
J6aeQF0z5dm2DyqRWuyTylY=
=Y4sP
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!zacharym
From: Zak Middleton 
Newsgroups: su.class.cs244a
Subject: Re: question about FAQ #27
Date: Thu, 6 Mar 2003 00:10:19 -0800
Lines: 54
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046938221 29068 171.64.15.85 (6 Mar 2003 08:10:21 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4824


I am also confused about this, especially in the context of the routing
table on slide number 5 on handout 11. On this slide the next-hop appears
to be the 'gateway', while the FAQ seems to be talking about next-hop as
just the IP address in question.

This seems simple, but just to make sure, is the gateway supposed to be
the next-hop as in slide 5 from handout 11? I don't see how the
next-hop/gateway could be 0.0.0.0 .

My intuition is that the FAQ is trying to say that either the IP address
will exactly match a query IP address in the routing table (because of a
mask of 255.255.255.255) and will have an explicit next hop, OR that it
won't match any of those and will be matched by a mask of 0.0.0.0 and
will use the default gateway (the firewall).

Thanks for any clarification,

Zak


On Wed, 5 Mar 2003, Will Robinson wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi again,
>
> FAQ #27 says:
>
>  You have to support two cases:
>     * Routes where the next hop is explicitly stated.
>     * Routes where the next hop is '0.0.0.0' which denotes that all
>       matches to this route lie in the collision domain of the interface
>       associated with the route. In this case, the next hop is the
>       destination address of the IP packet.
>
> Just so I'm completely clear, which entry in the routing table would the
> "next hop" you're talking about correspond to?  Is it "ip," like the entry
> for the default gateway that we were given?  Or could gateway entry itself
> be "0.0.0.0"?
>
> Thanks,
> Will
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.1 (GNU/Linux)
>
> iD8DBQE+Zvvw4uIcqiwjnrURAtfFAJ0a2yFGzfNrNuR24ZsTuRvFrlkKCwCgwNv9
> J6aeQF0z5dm2DyqRWuyTylY=
> =Y4sP
> -----END PGP SIGNATURE-----
>
>

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Thu, 6 Mar 2003 00:13:09 -0800
Lines: 40
Distribution: su
Message-ID: 
References: 
 
 
 
 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046938394 29530 171.64.15.99 (6 Mar 2003 08:13:14 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4825

On Wed, 5 Mar 2003, Martin Casado wrote:

>  I was under the incorrect assumption that all files were free game for
>  modification and none of the TAs caught the post.  The current view is that
>  for submissions we will grudgingly accept small modifications to all files
>  except sr_vns_comm.c which cannot be touched.

speaking of the devil, I found out that using the original files that you
provide and running the purified version: sr.purify with output to a
logfile
../sr.purify -s vr-server-b -t 62 -l logfile

Purify will complaint of ABR:

------------------------------------------------------------
      ABR: Array bounds read (19 times)
      This is occurring while in:
            memcpy         [rtlib.o]
            _memcpy        [rtlib.o]
            _fwrite_unlocked [libc.so.1]
            fwrite         [libc.so.1]
            sr_dump        [sr_dumper.c:63]
            sr_log_packet  [sr_vns_comm.c:366]
      Reading 84 bytes from 0xa3960 in the heap (24 bytes at 0xa399c
illegal).
      Address 0xa3960 is 24 bytes into a malloc'd block at 0xa3948 of 84
bytes.
      This block was allocated from:
            malloc         [rtlib.o]
            sr_read_from_server [sr_vns_comm.c:217]
            main           [sr_main.c:146]
            _start         [crt1.o]
      UMR: Uninitialized memory read (19 times)
--------------------------------------------------------------------

I don't know if it is important but you might probably want to take
a look at sr_vns_comm.c just in case.

Rafa

.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: question about FAQ #27
Date: Thu, 6 Mar 2003 00:57:53 -0800
Lines: 30
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine6.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046941075 951 171.64.15.71 (6 Mar 2003 08:57:55 GMT)
X-Complaints-To: 
To: Will Robinson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4826

On Wed, 5 Mar 2003, Will Robinson wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi again,
>
> FAQ #27 says:
>
>  You have to support two cases:
>     * Routes where the next hop is explicitly stated.
>     * Routes where the next hop is '0.0.0.0' which denotes that all
>       matches to this route lie in the collision domain of the interface
>       associated with the route. In this case, the next hop is the
>       destination address of the IP packet.
>
> Just so I'm completely clear, which entry in the routing table would the
> "next hop" you're talking about correspond to?  Is it "ip," like the entry
> for the default gateway that we were given?  Or could gateway entry itself
> be "0.0.0.0"?

 Using 0.0.0.0 denotes that the next hop is the destination address of the IP
 packet to be routed.  In order for this to be true, the next hop must be
 directly connected to the interface in the route.  Therefore it really doesn't
 make sense to use 0.0.0.0 for the next hop of the gateway because that
 essentially says that ALL end destinations for the default route are directly
 connected to the interface.

 /mc

.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: question about FAQ #27
Date: Thu, 6 Mar 2003 01:05:24 -0800
Lines: 29
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine6.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046941529 1337 171.64.15.71 (6 Mar 2003 09:05:29 GMT)
X-Complaints-To: 
To: Zak Middleton 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4827


>
> I am also confused about this, especially in the context of the routing
> table on slide number 5 on handout 11. On this slide the next-hop appears
> to be the 'gateway', while the FAQ seems to be talking about next-hop as
> just the IP address in question.

 The next hop, is the next hop the packet needs to take to reach the
 destination.

>
> This seems simple, but just to make sure, is the gateway supposed to be
> the next-hop as in slide 5 from handout 11? I don't see how the
> next-hop/gateway could be 0.0.0.0 .

 The next hop gateway cannot be 0.0.0.

> My intuition is that the FAQ is trying to say that either the IP address
> will exactly match a query IP address in the routing table (because of a
> mask of 255.255.255.255) and will have an explicit next hop,

 Not really ... for every valid route there must be a next hop. This next hop
 can either be an explicit IP or 0.0.0.0.  If the next hop is 0.0.0.0 that
 denotes that the next hop is equivalent to the destination IP of the IP
 packet.  You can certainly (and most often do) have a next hop of 0.0.0.0 for
 a route with a netmask other than 255.255.255.255.

 /mc

.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Thu, 6 Mar 2003 01:06:02 -0800
Lines: 48
Distribution: su
Message-ID: 
References: 
 
 
 
 
 
NNTP-Posting-Host: elaine6.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046941564 1371 171.64.15.71 (6 Mar 2003 09:06:04 GMT)
X-Complaints-To: 
To: Rafael M Hernandez 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4828


 This has been psoted a few times on the newsgroup.  You don't need to worry
 about that.

 /mc

> On Wed, 5 Mar 2003, Martin Casado wrote:
>
> >  I was under the incorrect assumption that all files were free game for
> >  modification and none of the TAs caught the post.  The current view is that
> >  for submissions we will grudgingly accept small modifications to all files
> >  except sr_vns_comm.c which cannot be touched.
>
> speaking of the devil, I found out that using the original files that you
> provide and running the purified version: sr.purify with output to a
> logfile
> ./sr.purify -s vr-server-b -t 62 -l logfile
>
> Purify will complaint of ABR:
>
> ------------------------------------------------------------
>       ABR: Array bounds read (19 times)
>       This is occurring while in:
>             memcpy         [rtlib.o]
>             _memcpy        [rtlib.o]
>             _fwrite_unlocked [libc.so.1]
>             fwrite         [libc.so.1]
>             sr_dump        [sr_dumper.c:63]
>             sr_log_packet  [sr_vns_comm.c:366]
>       Reading 84 bytes from 0xa3960 in the heap (24 bytes at 0xa399c
> illegal).
>       Address 0xa3960 is 24 bytes into a malloc'd block at 0xa3948 of 84
> bytes.
>       This block was allocated from:
>             malloc         [rtlib.o]
>             sr_read_from_server [sr_vns_comm.c:217]
>             main           [sr_main.c:146]
>             _start         [crt1.o]
>       UMR: Uninitialized memory read (19 times)
> --------------------------------------------------------------------
>
> I don't know if it is important but you might probably want to take
> a look at sr_vns_comm.c just in case.
>
> Rafa
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: Re: question about FAQ #27
Date: Thu, 06 Mar 2003 01:10:04 -0800
Lines: 39
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046941804 1599 128.12.91.22 (6 Mar 2003 09:10:04 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4829

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Martin,

Thanks for the reply, but I'm not sure my question was clear.  Let me try
again.  Here's a quote from the assignment handout, in the section "Test
Driving the sr Stub Code":

The routing table format is as follows:

    ip   gateway   mask   interface

a valid rtable may look as follows:

   172.24.74.213   172.24.74.213   255.255.255.255   eth1
   172.24.74.228   172.24.74.228   255.255.255.255   eth2 
   0.0.0.0         172.24.74.17    0.0.0.0           eth0

Now the FAQ refers to "Routes where the next hop is '0.0.0.0' which
denotes that all matches to this route lie in the collision domain of the
interface associated with the route. In this case, the next hop is the
destination address of the IP packet."

My question is this: the "next hop" mentioned in the FAQ corresponds to
which of those four fields in the rtable above?  In other words, what
cases do we have to handle, in terms of what input might we find in the
rtable?

Thanks again,
Will
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+ZxA94uIcqiwjnrURApuuAKC/iOkfjeac1JysFAju54WhdZbUgQCfbnyY
YTRMAsbrAA41DlkXkiRry+o=
=zwyC
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: traceroute output and ftp results
Date: Thu, 6 Mar 2003 01:14:15 -0800
Lines: 54
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine6.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046942056 1729 171.64.15.71 (6 Mar 2003 09:14:16 GMT)
X-Complaints-To: 
To: Rafael M Hernandez 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4830

> Hi,
>
> 1.-
> Because traceroute uses UDP when I do traceroute against our interfaces
> I'm sending two ICMP messages to traceroute:
> one because of TTL=0 and another with PORT UNREACHABLE.
>
> As a result traceroute will output:
> elaine24:~/class/cs244a/hw3/sr_stub> traceroute rhm-router-2
> traceroute to rhm-router-2.Stanford.EDU (192.168.128.227): 1-30 hops, 38
> byte packets
>  1  leland-gateway.Stanford.EDU (171.64.15.97)  1.66 ms  1.83 ms  1.15 ms
>  2  smra-rtr.Stanford.EDU (171.64.1.236)  1.90 ms (ttl=63!)  1.86 ms
> (ttl=63!)  1.59 ms (ttl=63!)
>  3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.849 ms  0.960 ms  1.12 ms
>  4  vr-firewall.Stanford.EDU (171.64.74.9)  0.861 ms  1.19 ms  1.18 ms
>  5  rhm-router-2.Stanford.EDU (192.168.128.227)  6.15 ms (ttl=60!) !A
> 42.6 ms (ttl=60!) !A  2.01 ms (ttl=60!) !A
>
> According to the traceroute man page
>
>  !A    Some routers fail to generate an ICMP  "port  unreach-
>            able"  message,  but send an ICMP "time exceeded" mes-
>            sage instead, if they are the target host. The indica-
>            tor is printed if this is detected.
>
> so it seems like we should only send a port unreachable and not a
> time exceeded but I'm wondering why do we have to treat this
> as an special case? Or is there any precedence established for
> ICMP messages that I'm missing here?


Here is tcpdump output from a linux router that has received a traceroute UDP packet
and is responding...

01:07:08.669181 171.64.15.76.41537 > 172.24.74.19.33447:  [no cksum] udp 10 (DF) [ttl 1] (id 24470, len 38)
01:07:08.669220 172.24.74.19 > 171.64.15.76: icmp: 172.24.74.19 udp port 33447 unreachable for 171.64.15.76.41537 > 172.24.74.19.33447:  [no cksum] udp 10 (DF) [ttl 1] (id 24470, len 38) [tos 0xc0]  (ttl 255, id 10100, len 66)

The UDP, when it hits the interface has a TTL of 1 (expected)

The router then, instead of decrementing the ttl of the packet (because the packet is NOT bieng forwarded),
simply returns the correct ICMP message.

> 2.-
> What is the checksum we should get for the download_me.au once we
> have downloaded it?

elaine11:~> md5sum download_me.au
ad5c905c43fe0ed296f1aa4bbdd89789  download_me.au

Has anyone actually been able to discern what that file is actually playing?

/mc

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: question about FAQ #27
Date: Thu, 6 Mar 2003 01:23:00 -0800
Lines: 49
Distribution: su
Message-ID: 
References: 
 
 
NNTP-Posting-Host: elaine5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046942582 1992 171.64.15.70 (6 Mar 2003 09:23:02 GMT)
X-Complaints-To: 
To: Will Robinson 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4831

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi Martin,
>
> Thanks for the reply, but I'm not sure my question was clear.  Let me try
> again.  Here's a quote from the assignment handout, in the section "Test
> Driving the sr Stub Code":
>
> The routing table format is as follows:
>
>     ip   gateway   mask   interface
>
> a valid rtable may look as follows:
>
>    172.24.74.213   172.24.74.213   255.255.255.255   eth1
>    172.24.74.228   172.24.74.228   255.255.255.255   eth2
>    0.0.0.0         172.24.74.17    0.0.0.0           eth0
>
> Now the FAQ refers to "Routes where the next hop is '0.0.0.0' which
> denotes that all matches to this route lie in the collision domain of the
> interface associated with the route. In this case, the next hop is the
> destination address of the IP packet."
>
> My question is this: the "next hop" mentioned in the FAQ corresponds to
> which of those four fields in the rtable above?  In other words, what
> cases do we have to handle, in terms of what input might we find in the
> rtable?

 The tables fields are ...

 Subnet    NextHop    Mask   Dev

 In the above example, all IP packets will match the gateway .. and will be
 forwarded to the firewall (172.24.74.17). You could, however .. have an
 entry like....

 172.24.74.0    0.0.0.0  255.255.255.0  eth1

 Which would mean .....

 all ips in the subnet 172.24.74.xxx are directly connected to eth1.  On
 receipt of a packet destined to this subnet .. say 172.24.74.42, the router
 would use the next hop 172.24.74.42 off of eth1.

 Does that clear things up any?

 /mc

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Thu, 6 Mar 2003 01:26:35 -0800
Lines: 56
Distribution: su
Message-ID: 
References: 
 
 
 
 
 
 
NNTP-Posting-Host: elaine5.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046942797 2061 171.64.15.70 (6 Mar 2003 09:26:37 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4832



  It should be fixed in the current source release btw ...

  /mc

>
>  This has been psoted a few times on the newsgroup.  You don't need to worry
>  about that.
>
>  /mc
>
> > On Wed, 5 Mar 2003, Martin Casado wrote:
> >
> > >  I was under the incorrect assumption that all files were free game for
> > >  modification and none of the TAs caught the post.  The current view is that
> > >  for submissions we will grudgingly accept small modifications to all files
> > >  except sr_vns_comm.c which cannot be touched.
> >
> > speaking of the devil, I found out that using the original files that you
> > provide and running the purified version: sr.purify with output to a
> > logfile
> > ./sr.purify -s vr-server-b -t 62 -l logfile
> >
> > Purify will complaint of ABR:
> >
> > ------------------------------------------------------------
> >       ABR: Array bounds read (19 times)
> >       This is occurring while in:
> >             memcpy         [rtlib.o]
> >             _memcpy        [rtlib.o]
> >             _fwrite_unlocked [libc.so.1]
> >             fwrite         [libc.so.1]
> >             sr_dump        [sr_dumper.c:63]
> >             sr_log_packet  [sr_vns_comm.c:366]
> >       Reading 84 bytes from 0xa3960 in the heap (24 bytes at 0xa399c
> > illegal).
> >       Address 0xa3960 is 24 bytes into a malloc'd block at 0xa3948 of 84
> > bytes.
> >       This block was allocated from:
> >             malloc         [rtlib.o]
> >             sr_read_from_server [sr_vns_comm.c:217]
> >             main           [sr_main.c:146]
> >             _start         [crt1.o]
> >       UMR: Uninitialized memory read (19 times)
> > --------------------------------------------------------------------
> >
> > I don't know if it is important but you might probably want to take
> > a look at sr_vns_comm.c just in case.
> >
> > Rafa
> >
> >
>
>

.

Message-ID: 
From: "Brandon Badger" 
To: 
Subject: am I reading the data in the IP packet correctly?
Date: Thu, 06 Mar 2003 01:50:40 -0800
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_000B_01C2E382.FF81B760"
X-Priority: 3
X-Msmail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4522.1200
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200
Lines: 337
Newsgroups: su.class.cs244a
Organization: Stanford University Posting Gateway (mailtonews 1.3/0.42)
Path: shelby.stanford.edu!mail-to-news!smtp1.stanford.edu
Sender: 
X-Mail-Path: 
X-Original-Date: Thu, 6 Mar 2003 01:52:09 -0800
X-Original-Message-ID: 
Xref: shelby.stanford.edu su.class.cs244a:4833


This is a multi-part message in MIME format.

------=_NextPart_000_000B_01C2E382.FF81B760
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi.  Can anyone tell if I have an error in my DebugPacket() function =
below that is causing it to print out the incorrect ip_src and ip_dst =
addresses?

thanks,
Brandon


For some reason, the IP packets that I'm getting seem to be hosed since =
my DebugPacket() function is printing out messed up values.  Yet, the =
sr_log_packet() function in sr_vns_comm.c is logging the packet =
correctly, so this leads me to believe that maybe my DebugPacket() =
function is screwed up. =20

In sr_read_from_server(), I put a call to DebugPacket(sr, buf + =
sizeof(c_packet_header), sr_pkt->mLen,"eth0")  right before the packet =
is logged by sr_log_packet(sr, buf + sizeof(c_packet_header), =
sr_pkt->mLen);

My DebugPacket function prints out:

****************
Debugging Packet
IP PACKET
ETHER_DHOST:70:00:00:0a:00:01
ETHER_SHOST:00:e0:81:03:fd:9e
IP_LEN:54216
TTL:0
IPV:0
CHECK:57
IP_SRC:32.32.32.32
IP_DEST:101.116.104.49
***************

The IP_LEN value is way off and the IP_SRC and IP_DEST aren't what they =
should be. They should print out the IP's for elaine26 and www-brandon =
since I'm pinging www-brandon from elaine26.

Yet, the sr_log_packet() on the same buf put the correct entry into the =
logfile:

01:23:40.793892 arp who-has brandon-router-1.Stanford.EDU tell =
vr-firewall.Stanford.EDU
01:23:40.794755 arp reply brandon-router-1.Stanford.EDU is-at =
70:0:0:a:0:1
01:23:40.796460 elaine26.Stanford.EDU > www-brandon.Stanford.EDU: icmp: =
echo request (DF)

So maybe the IP packet in buf isn't hosed and I'm just reading it =
incorrectly.... I'm confused....

Here's my DebugPacket():

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

typedef struct ip IPHeader;
typedef struct sr_ethernet_hdr EHeader;
typedef struct in_addr IPAddr;
typedef struct sr_arphdr ARPHeader;

void DebugPacket(struct sr_instance* sr,
        uint8_t * packet/* lent */,
        unsigned int len,
        char* interface/* lent */)
{

        EPacket *p;
        EHeader *eHdr;
        ARPHeader *arp_header;
        IPHeader *pHdr;
        struct in_addr iadr;

        printf("\n****************\nDebugging Packet\n");
        p =3D (EPacket*) packet;

        printf("ETHER_DHOST:");
        DebugMAC(p->header.ether_dhost);
        printf("\n");
        printf("ETHER_SHOST:");
        DebugMAC(p->header.ether_shost);
        printf("\n");

        if(p->header.ether_type =3D=3D ETHERTYPE_ARP){
          /*this is an arp packet*/
          printf("ARP PACKET\n");

          arp_header =3D (struct sr_arphdr*)(packet + sizeof(EHeader));
          printf("AR_OP:%d\n", arp_header->ar_op);
          printf("AR_HRD:%d\n", arp_header->ar_hrd);
          printf("AR_PRO:%d\n", arp_header->ar_pro);
          printf("AR_HLN:%d\n", arp_header->ar_hln);
          printf("AR_PLN:%d\n", arp_header->ar_pln);
          printf("AR_THA:");
          DebugMAC(arp_header->ar_tha);
          printf("\n");
          printf("AR_SHA:");
          DebugMAC(arp_header->ar_sha);
          printf("\n");

          iadr.s_addr =3D arp_header->ar_tip;
          printf("AR_TIP:%s\n", inet_ntoa(iadr));

          iadr.s_addr =3D arp_header->ar_sip;
          printf("AR_SIP:%s\n", inet_ntoa(iadr));

        }
        else{

          printf("IP PACKET\n");

          pHdr =3D (IPHeader*) packet+sizeof(EHeader);

          printf("IP_LEN:%d\n", pHdr->ip_len);
          printf("TTL:%d\n", pHdr->ip_ttl);
          printf("IPV:%d\n", pHdr->ip_p);
          printf("CHECK:%d\n", pHdr->ip_sum);

          printf("IP_SRC:%s\n",inet_ntoa(pHdr->ip_src));
          printf("IP_DEST:%s\n",inet_ntoa(pHdr->ip_dst));

        }
       printf("***************\n\n");
}











------=_NextPart_000_000B_01C2E382.FF81B760
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.3315.2870" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Hi.  Can anyone tell if I have an =
error=20
in my DebugPacket() function below that is causing it to print out =
the=20
incorrect ip_src and ip_dst addresses?</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>thanks,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Brandon</FONT></DIV>
<DIV><FONT face=3DArial size=3D2><A=20

>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>For some reason, the IP packets that =
I'm getting=20
seem to be hosed since my DebugPacket() function is printing out messed =
up=20
values.  Yet, the <FONT size=3D2>sr_log_packet() function in =
sr_vns_comm.c is=20
logging the packet correctly, so this leads me to believe that maybe my=20
DebugPacket() function is screwed up.  </FONT></FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>In <FONT =
size=3D2>sr_read_from_server(), I put a call=20
to <FONT size=3D2>DebugPacket(sr, buf + sizeof(c_packet_header),=20
sr_pkt->mLen,"eth0")  right before the packet is logged by <FONT=20
size=3D2>sr_log_packet(sr, buf + sizeof(c_packet_header),=20
sr_pkt->mLen);</FONT></FONT></FONT></FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>My DebugPacket function prints =
out:</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>****************<BR>Debugging =
Packet<BR>IP=20
PACKET<BR>ETHER_DHOST:70:00:00:0a:00:01<BR>ETHER_SHOST:00:e0:81:03:fd:9e<=
BR>IP_LEN:54216<BR>TTL:0<BR>IPV:0<BR>CHECK:57<BR>IP_SRC:32.32.32.32<BR>IP=
_DEST:101.116.104.49<BR>***************</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>The IP_LEN value is way off and the =
IP_SRC and=20
IP_DEST aren't what they should be. They should print out the IP's for =
elaine26=20
and www-brandon since I'm pinging www-brandon from =
elaine26.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>Yet, the sr_log_packet() on the same =
buf put the=20
correct entry into the logfile:</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>01:23:40.793892 arp who-has=20
brandon-router-1.Stanford.EDU tell =
vr-firewall.Stanford.EDU<BR>01:23:40.794755=20
arp reply brandon-router-1.Stanford.EDU is-at =
70:0:0:a:0:1<BR>01:23:40.796460=20
elaine26.Stanford.EDU > www-brandon.Stanford.EDU: icmp: echo request=20
(DF)</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>So maybe the IP packet in buf isn't =
hosed and I'm=20
just reading it incorrectly.... I'm confused....</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>Here's my DebugPacket():</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial=20
size=3D2>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<=
/FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>typedef struct ip IPHeader;<BR>typedef =
struct=20
sr_ethernet_hdr EHeader;<BR>typedef struct in_addr IPAddr;<BR>typedef =
struct=20
sr_arphdr ARPHeader;</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=3DArial size=3D2>void DebugPacket(struct sr_instance*=20
sr,<BR>        uint8_t * packet/* =
lent=20
*/,<BR>        unsigned int=20
len,<BR>        char* interface/* =
lent=20
*/)<BR>{<BR><BR>        EPacket=20
*p;<BR>        EHeader=20
*eHdr;<BR>        ARPHeader=20
*arp_header;<BR>        IPHeader=20
*pHdr;<BR>        struct in_addr=20
iadr;<BR><BR>       =20
printf("\n****************\nDebugging=20
Packet\n");<BR>        p =3D =
(EPacket*)=20
packet;</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial=20
size=3D2>        printf("ETHER_DH=
OST:");<BR>        DebugMAC(p->=
;header.ether_dhost);<BR>        =
printf("\n");<BR>        printf("=
ETHER_SHOST:");<BR>        DebugM=
AC(p->header.ether_shost);<BR>      &nbs=
p; printf("\n");<BR><BR>       =20
if(p->header.ether_type =3D=3D=20
ETHERTYPE_ARP){<BR>         =
 /*this=20
is an arp =
packet*/<BR>         =20
printf("ARP PACKET\n");</FONT></DIV>
<DIV><FONT face=3DArial=20
size=3D2><BR>          =
arp_header =3D=20
(struct sr_arphdr*)(packet +=20
sizeof(EHeader));<BR>        &nbs=
p;=20
printf("AR_OP:%d\n",=20
arp_header->ar_op);<BR>        =
; =20
printf("AR_HRD:%d\n",=20
arp_header->ar_hrd);<BR>       &nbs=
p; =20
printf("AR_PRO:%d\n",=20
arp_header->ar_pro);<BR>       &nbs=
p; =20
printf("AR_HLN:%d\n",=20
arp_header->ar_hln);<BR>       &nbs=
p; =20
printf("AR_PLN:%d\n",=20
arp_header->ar_pln);<BR>       &nbs=
p; =20
printf("AR_THA:");<BR>        &nb=
sp;=20
DebugMAC(arp_header->ar_tha);<BR>      &=
nbsp;  =20
printf("\n");<BR>         =20
printf("AR_SHA:");<BR>        &nb=
sp;=20
DebugMAC(arp_header->ar_sha);<BR>      &=
nbsp;  =20
printf("\n");<BR><BR>        &nbs=
p;=20
iadr.s_addr =3D=20
arp_header->ar_tip;<BR>        =
; =20
printf("AR_TIP:%s\n",=20
inet_ntoa(iadr));<BR><BR>        =
 =20
iadr.s_addr =3D=20
arp_header->ar_sip;<BR>        =
; =20
printf("AR_SIP:%s\n",=20
inet_ntoa(iadr));<BR><BR>       =20
}<BR>        else{</FONT></DIV>
<DIV><FONT face=3DArial=20
size=3D2><BR>          =
printf("IP=20
PACKET\n");<BR><BR>         =
 pHdr =3D=20
(IPHeader*) packet+sizeof(EHeader);<BR></DIV></FONT>
<DIV><FONT face=3DArial size=3D2>    =
     =20
printf("IP_LEN:%d\n",=20
pHdr->ip_len);<BR>        &nbs=
p;=20
printf("TTL:%d\n", pHdr->ip_ttl);</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>     =
    =20
printf("IPV:%d\n",=20
pHdr->ip_p);<BR>         =
=20
printf("CHECK:%d\n", pHdr->ip_sum);</FONT></DIV>
<DIV><FONT face=3DArial=20
size=3D2><BR>         =20
printf("IP_SRC:%s\n",inet_ntoa(pHdr->ip_src));<BR>   &n=
bsp;     =20
printf("IP_DEST:%s\n",inet_ntoa(pHdr->ip_dst));</FONT></DIV>
<DIV><FONT face=3DArial =
size=3D2><BR>       =20
}<BR>      =20
printf("***************\n\n");<BR>}<BR><BR><BR><BR><BR><BR><BR><BR></DIV>=
</FONT>
<DIV> </DIV>
<DIV> </DIV></BODY></HTML>

------=_NextPart_000_000B_01C2E382.FF81B760--
.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: Re: am I reading the data in the IP packet correctly?
Date: Thu, 6 Mar 2003 02:36:49 -0800
Lines: 394
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: avengingspirit.stanford.edu
Mime-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_02E2_01C2E389.3D26E8A0"
X-Trace: news.Stanford.EDU 1046947010 4462 128.12.22.55 (6 Mar 2003 10:36:50 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4834

This is a multi-part message in MIME format.

------=_NextPart_000_02E2_01C2E389.3D26E8A0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

seems like your  [pHdr =3D (IPHeader*) packet+sizeof(EHeader);] in the =
IP section should be=20
pHdr =3D (IPHeader*) (packet+sizeof(EHeader));   unless of course =
typecasting has an even lower precedence?

           -- sc (not TA)
  "Brandon Badger"  wrote in message =

  Hi.  Can anyone tell if I have an error in my DebugPacket() function =
below that is causing it to print out the incorrect ip_src and ip_dst =
addresses?

  thanks,
  Brandon
  

  For some reason, the IP packets that I'm getting seem to be hosed =
since my DebugPacket() function is printing out messed up values.  Yet, =
the sr_log_packet() function in sr_vns_comm.c is logging the packet =
correctly, so this leads me to believe that maybe my DebugPacket() =
function is screwed up. =20

  In sr_read_from_server(), I put a call to DebugPacket(sr, buf + =
sizeof(c_packet_header), sr_pkt->mLen,"eth0") right before the packet is =
logged by sr_log_packet(sr, buf + sizeof(c_packet_header), =
sr_pkt->mLen);

  My DebugPacket function prints out:

  ****************
  Debugging Packet
  IP PACKET
  ETHER_DHOST:70:00:00:0a:00:01
  ETHER_SHOST:00:e0:81:03:fd:9e
  IP_LEN:54216
  TTL:0
  IPV:0
  CHECK:57
  IP_SRC:32.32.32.32
  IP_DEST:101.116.104.49
  ***************

  The IP_LEN value is way off and the IP_SRC and IP_DEST aren't what =
they should be. They should print out the IP's for elaine26 and =
www-brandon since I'm pinging www-brandon from elaine26.

  Yet, the sr_log_packet() on the same buf put the correct entry into =
the logfile:

  01:23:40.793892 arp who-has brandon-router-1.Stanford.EDU tell =
vr-firewall.Stanford.EDU
  01:23:40.794755 arp reply brandon-router-1.Stanford.EDU is-at =
70:0:0:a:0:1
  01:23:40.796460 elaine26.Stanford.EDU > www-brandon.Stanford.EDU: =
icmp: echo request (DF)

  So maybe the IP packet in buf isn't hosed and I'm just reading it =
incorrectly.... I'm confused....

  Here's my DebugPacket():

  =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

  typedef struct ip IPHeader;
  typedef struct sr_ethernet_hdr EHeader;
  typedef struct in_addr IPAddr;
  typedef struct sr_arphdr ARPHeader;

  void DebugPacket(struct sr_instance* sr,
          uint8_t * packet/* lent */,
          unsigned int len,
          char* interface/* lent */)
  {

          EPacket *p;
          EHeader *eHdr;
          ARPHeader *arp_header;
          IPHeader *pHdr;
          struct in_addr iadr;

          printf("\n****************\nDebugging Packet\n");
          p =3D (EPacket*) packet;

          printf("ETHER_DHOST:");
          DebugMAC(p->header.ether_dhost);
          printf("\n");
          printf("ETHER_SHOST:");
          DebugMAC(p->header.ether_shost);
          printf("\n");

          if(p->header.ether_type =3D=3D ETHERTYPE_ARP){
            /*this is an arp packet*/
            printf("ARP PACKET\n");

            arp_header =3D (struct sr_arphdr*)(packet + =
sizeof(EHeader));
            printf("AR_OP:%d\n", arp_header->ar_op);
            printf("AR_HRD:%d\n", arp_header->ar_hrd);
            printf("AR_PRO:%d\n", arp_header->ar_pro);
            printf("AR_HLN:%d\n", arp_header->ar_hln);
            printf("AR_PLN:%d\n", arp_header->ar_pln);
            printf("AR_THA:");
            DebugMAC(arp_header->ar_tha);
            printf("\n");
            printf("AR_SHA:");
            DebugMAC(arp_header->ar_sha);
            printf("\n");

            iadr.s_addr =3D arp_header->ar_tip;
            printf("AR_TIP:%s\n", inet_ntoa(iadr));

            iadr.s_addr =3D arp_header->ar_sip;
            printf("AR_SIP:%s\n", inet_ntoa(iadr));

          }
          else{

            printf("IP PACKET\n");

            pHdr =3D (IPHeader*) packet+sizeof(EHeader);

            printf("IP_LEN:%d\n", pHdr->ip_len);
            printf("TTL:%d\n", pHdr->ip_ttl);
            printf("IPV:%d\n", pHdr->ip_p);
            printf("CHECK:%d\n", pHdr->ip_sum);

            printf("IP_SRC:%s\n",inet_ntoa(pHdr->ip_src));
            printf("IP_DEST:%s\n",inet_ntoa(pHdr->ip_dst));

          }
         printf("***************\n\n");
  }










------=_NextPart_000_02E2_01C2E389.3D26E8A0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2800.1141" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>seems like your  [pHdr =3D =
(IPHeader*)=20
packet+sizeof(EHeader);] in the IP section should be </FONT></DIV>
<DIV><FONT face=3DArial size=3D2>pHdr =3D (IPHeader*)=20
(packet+sizeof(EHeader));   unless of course typecasting has =
an even=20
lower precedence?</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial=20
size=3D2>           -- =
sc (not=20
TA)</FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV>"Brandon Badger" <<A=20
   =
wrote in=20
  message <A=20
  =


  <DIV><FONT face=3DArial size=3D2>Hi.  Can anyone tell if I have =
an error=20
  in my DebugPacket() function below that is causing it to print =
out the=20
  incorrect ip_src and ip_dst addresses?</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>thanks,</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2>Brandon</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2><A=20
  =

>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>For some reason, the IP packets that =
I'm getting=20
  seem to be hosed since my DebugPacket() function is printing out =
messed up=20
  values.  Yet, the <FONT size=3D2>sr_log_packet() function in =
sr_vns_comm.c=20
  is logging the packet correctly, so this leads me to believe that =
maybe my=20
  DebugPacket() function is screwed up.  </FONT></FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>In <FONT =
size=3D2>sr_read_from_server(), I put a=20
  call to <FONT size=3D2>DebugPacket(sr, buf + sizeof(c_packet_header),=20
  sr_pkt->mLen,"eth0") right before the packet is logged by <FONT=20
  size=3D2>sr_log_packet(sr, buf + sizeof(c_packet_header),=20
  sr_pkt->mLen);</FONT></FONT></FONT></FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>My DebugPacket function prints =
out:</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>****************<BR>Debugging =
Packet<BR>IP=20
  =
PACKET<BR>ETHER_DHOST:70:00:00:0a:00:01<BR>ETHER_SHOST:00:e0:81:03:fd:9e<=
BR>IP_LEN:54216<BR>TTL:0<BR>IPV:0<BR>CHECK:57<BR>IP_SRC:32.32.32.32<BR>IP=
_DEST:101.116.104.49<BR>***************</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>The IP_LEN value is way off and the =
IP_SRC and=20
  IP_DEST aren't what they should be. They should print out the IP's for =

  elaine26 and www-brandon since I'm pinging www-brandon from=20
  elaine26.</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>Yet, the sr_log_packet() on the same =
buf put the=20
  correct entry into the logfile:</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>01:23:40.793892 arp who-has=20
  brandon-router-1.Stanford.EDU tell =
vr-firewall.Stanford.EDU<BR>01:23:40.794755=20
  arp reply brandon-router-1.Stanford.EDU is-at =
70:0:0:a:0:1<BR>01:23:40.796460=20
  elaine26.Stanford.EDU > www-brandon.Stanford.EDU: icmp: echo =
request=20
  (DF)</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>So maybe the IP packet in buf isn't =
hosed and I'm=20
  just reading it incorrectly.... I'm confused....</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>Here's my DebugPacket():</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial=20
  =
size=3D2>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<=
/FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>typedef struct ip =
IPHeader;<BR>typedef struct=20
  sr_ethernet_hdr EHeader;<BR>typedef struct in_addr IPAddr;<BR>typedef =
struct=20
  sr_arphdr ARPHeader;</FONT></DIV>
  <DIV> </DIV>
  <DIV><FONT face=3DArial size=3D2>void DebugPacket(struct sr_instance*=20
  sr,<BR>        uint8_t * packet/* =
lent=20
  */,<BR>        unsigned int=20
  len,<BR>        char* interface/* =
lent=20
  */)<BR>{<BR><BR>        EPacket=20
  *p;<BR>        EHeader=20
  *eHdr;<BR>        ARPHeader=20
  *arp_header;<BR>        IPHeader=20
  *pHdr;<BR>        struct in_addr=20
  iadr;<BR><BR>       =20
  printf("\n****************\nDebugging=20
  Packet\n");<BR>        p =3D =
(EPacket*)=20
  packet;</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2></FONT> </DIV>
  <DIV><FONT face=3DArial=20
  =
size=3D2>        printf("ETHER_DH=
OST:");<BR>        DebugMAC(p->=
;header.ether_dhost);<BR>        =
printf("\n");<BR>        printf("=
ETHER_SHOST:");<BR>        DebugM=
AC(p->header.ether_shost);<BR>      &nbs=
p; printf("\n");<BR><BR>       =20
  if(p->header.ether_type =3D=3D=20
  =
ETHERTYPE_ARP){<BR>         =
 /*this=20
  is an arp =
packet*/<BR>         =20
  printf("ARP PACKET\n");</FONT></DIV>
  <DIV><FONT face=3DArial=20
  size=3D2><BR>          =
arp_header =3D=20
  (struct sr_arphdr*)(packet +=20
  =
sizeof(EHeader));<BR>        &nbs=
p;=20
  printf("AR_OP:%d\n",=20
  =
arp_header->ar_op);<BR>        =
; =20
  printf("AR_HRD:%d\n",=20
  =
arp_header->ar_hrd);<BR>       &nbs=
p; =20
  printf("AR_PRO:%d\n",=20
  =
arp_header->ar_pro);<BR>       &nbs=
p; =20
  printf("AR_HLN:%d\n",=20
  =
arp_header->ar_hln);<BR>       &nbs=
p; =20
  printf("AR_PLN:%d\n",=20
  =
arp_header->ar_pln);<BR>       &nbs=
p; =20
  =
printf("AR_THA:");<BR>        &nb=
sp;=20
  =
DebugMAC(arp_header->ar_tha);<BR>      &=
nbsp;  =20
  =
printf("\n");<BR>         =20
  =
printf("AR_SHA:");<BR>        &nb=
sp;=20
  =
DebugMAC(arp_header->ar_sha);<BR>      &=
nbsp;  =20
  =
printf("\n");<BR><BR>        &nbs=
p;=20
  iadr.s_addr =3D=20
  =
arp_header->ar_tip;<BR>        =
; =20
  printf("AR_TIP:%s\n",=20
  =
inet_ntoa(iadr));<BR><BR>        =
 =20
  iadr.s_addr =3D=20
  =
arp_header->ar_sip;<BR>        =
; =20
  printf("AR_SIP:%s\n",=20
  inet_ntoa(iadr));<BR><BR>       =20
  }<BR>        else{</FONT></DIV>
  <DIV><FONT face=3DArial=20
  size=3D2><BR>          =
printf("IP=20
  =
PACKET\n");<BR><BR>         =
 pHdr=20
  =3D (IPHeader*) packet+sizeof(EHeader);<BR></DIV></FONT>
  <DIV><FONT face=3DArial size=3D2>    =
     =20
  printf("IP_LEN:%d\n",=20
  =
pHdr->ip_len);<BR>        &nbs=
p;=20
  printf("TTL:%d\n", pHdr->ip_ttl);</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2>     =
    =20
  printf("IPV:%d\n",=20
  =
pHdr->ip_p);<BR>         =
=20
  printf("CHECK:%d\n", pHdr->ip_sum);</FONT></DIV>
  <DIV><FONT face=3DArial=20
  size=3D2><BR>         =20
  =
printf("IP_SRC:%s\n",inet_ntoa(pHdr->ip_src));<BR>   &n=
bsp;     =20
  printf("IP_DEST:%s\n",inet_ntoa(pHdr->ip_dst));</FONT></DIV>
  <DIV><FONT face=3DArial =
size=3D2><BR>       =20
  }<BR>      =20
  =
printf("***************\n\n");<BR>}<BR><BR><BR><BR><BR><BR><BR><BR></DIV>=
</FONT>
  <DIV> </DIV>
  <DIV> </DIV></BLOCKQUOTE></BODY></HTML>

------=_NextPart_000_02E2_01C2E389.3D26E8A0--

.

Path: shelby.stanford.edu!not-for-mail
From: "Vijay Chemburkar" 
Newsgroups: su.class.cs244a
Subject: Re: traceroute output and ftp results
Date: Thu, 6 Mar 2003 04:24:36 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: vj.stanford.edu
X-Trace: news.Stanford.EDU 1046953484 9013 128.12.79.199 (6 Mar 2003 12:24:44 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4835

somewhat off topic...FAQ #10 suggests using a TTL of 64 like linux. However,
that's what causes the (ttl=60!) in the traceroute below (and also the
(ttl=63!) in the second hop. I believe that traceroute is expecting you to
use a TTL of 0xff, so that it can see that the number of hops one way equals
the number of hops on the way back. not that it really matters...

vj

"Rafael M Hernandez"  wrote in message

> As a result traceroute will output:
> elaine24:~/class/cs244a/hw3/sr_stub> traceroute rhm-router-2
> traceroute to rhm-router-2.Stanford.EDU (192.168.128.227): 1-30 hops, 38
> byte packets
>  1  leland-gateway.Stanford.EDU (171.64.15.97)  1.66 ms  1.83 ms  1.15 ms
>  2  smra-rtr.Stanford.EDU (171.64.1.236)  1.90 ms (ttl=63!)  1.86 ms
> (ttl=63!)  1.59 ms (ttl=63!)
>  3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.849 ms  0.960 ms  1.12 ms
>  4  vr-firewall.Stanford.EDU (171.64.74.9)  0.861 ms  1.19 ms  1.18 ms
>  5  rhm-router-2.Stanford.EDU (192.168.128.227)  6.15 ms (ttl=60!) !A
> 42.6 ms (ttl=60!) !A  2.01 ms (ttl=60!) !A


.

Path: shelby.stanford.edu!elaine15.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: traceroute output and ftp results
Date: Thu, 6 Mar 2003 04:55:28 -0800
Lines: 51
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine15.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046955330 9827 171.64.15.80 (6 Mar 2003 12:55:30 GMT)
X-Complaints-To: 
To: Vijay Chemburkar 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4836


> somewhat off topic...FAQ #10 suggests using a TTL of 64 like linux. However,
> that's what causes the (ttl=60!) in the traceroute below (and also the
> (ttl=63!) in the second hop. I believe that traceroute is expecting you to
> use a TTL of 0xff, so that it can see that the number of hops one way equals
> the number of hops on the way back. not that it really matters...
>
> vj

 From the solaris traceroute man page,

(ttl=n!)
           indicates  that  the  ttl  value  in  the  ICMP  "time
           exceeded"  packet  that  we received was "unexpected".
           What we expect is that the value will be (some initial
           value  -  the number of routers between us).  In other
           words, if the path from hop 5 to us is the same as the
           path  from  us  to  hop  5, we expect to receive a ttl
           value of (some initial  value  -  4).   Unfortunately,
           there  are  several  common  "initial value"s for ICMP
           ttls.  The most common are 255, 60, 59, 30,  29.  (4.3
           tahoe  BSD  and cisco routers use 255, Proteon routers
           use either 59 or 29  depending  on  software  release,
           several  other  implementations  use 60 and 30.)  tra-
           ceroute checks against all of these, making it hard to
           detect  some "off by one" routing asymmetries.  If you
           want to see all the ttl values in all the packets, use
           the "-l" option.

 Notice that 64 is not considered to be a "common" initial ttl value.

  /mc

>
> "Rafael M Hernandez"  wrote in message
> 
> > As a result traceroute will output:
> > elaine24:~/class/cs244a/hw3/sr_stub> traceroute rhm-router-2
> > traceroute to rhm-router-2.Stanford.EDU (192.168.128.227): 1-30 hops, 38
> > byte packets
> >  1  leland-gateway.Stanford.EDU (171.64.15.97)  1.66 ms  1.83 ms  1.15 ms
> >  2  smra-rtr.Stanford.EDU (171.64.1.236)  1.90 ms (ttl=63!)  1.86 ms
> > (ttl=63!)  1.59 ms (ttl=63!)
> >  3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.849 ms  0.960 ms  1.12 ms
> >  4  vr-firewall.Stanford.EDU (171.64.74.9)  0.861 ms  1.19 ms  1.18 ms
> >  5  rhm-router-2.Stanford.EDU (192.168.128.227)  6.15 ms (ttl=60!) !A
> > 42.6 ms (ttl=60!) !A  2.01 ms (ttl=60!) !A
>
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: Re: question about FAQ #27
Date: Thu, 06 Mar 2003 08:50:37 -0800
Lines: 19
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1046969440 16599 128.12.91.22 (6 Mar 2003 16:50:40 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4837

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Thu, 06 Mar 2003 01:23:00 -0800, Martin Casado 
wrote:

>  Does that clear things up any?

Yes, that answered my question exactly!  Thanks for sticking with me. :)

Will
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+Z3xM4uIcqiwjnrURApKGAKCjbm2gGQwucaFb//UXGiHXDSMrUACgvZ8L
S/tLHfq+cE6CHYyPwPNYEWM=
=JUQ2
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Thu, 6 Mar 2003 09:34:21 -0800
Lines: 77
Distribution: su
Message-ID: 
References: 
 
 
 
 
 
 
 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046972063 18065 171.64.15.99 (6 Mar 2003 17:34:23 GMT)
X-Complaints-To: 
To: Martin Casado 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4838


I do worry because if I don't use logging to a file my router can
work for hours without crashing but if I use logging it usually
stops after 15 or 20 minutes. It doesn't crash. it just seems
to stop. This is usually accompanied with the vr-server-b
going down, although not always. Purify does not complaint
about any memory leaks or array bounds inside my code so I
would think my router locking up when using logging is due
to this and not to anything on my code.
I would think that depending on how things are aligned in memory
regarding to page boundaries there's a chance that by reading
outside the allocated memory will cause a SIGSEGV sooner or
later.

Rafa


On Thu, 6 Mar 2003, Martin Casado wrote:

>
>
>   It should be fixed in the current source release btw ...
>
>   /mc
>
> >
> >  This has been psoted a few times on the newsgroup.  You don't need to worry
> >  about that.
> >
> >  /mc
> >
> > > On Wed, 5 Mar 2003, Martin Casado wrote:
> > >
> > > >  I was under the incorrect assumption that all files were free game for
> > > >  modification and none of the TAs caught the post.  The current view is that
> > > >  for submissions we will grudgingly accept small modifications to all files
> > > >  except sr_vns_comm.c which cannot be touched.
> > >
> > > speaking of the devil, I found out that using the original files that you
> > > provide and running the purified version: sr.purify with output to a
> > > logfile
> > > ./sr.purify -s vr-server-b -t 62 -l logfile
> > >
> > > Purify will complaint of ABR:
> > >
> > > ------------------------------------------------------------
> > >       ABR: Array bounds read (19 times)
> > >       This is occurring while in:
> > >             memcpy         [rtlib.o]
> > >             _memcpy        [rtlib.o]
> > >             _fwrite_unlocked [libc.so.1]
> > >             fwrite         [libc.so.1]
> > >             sr_dump        [sr_dumper.c:63]
> > >             sr_log_packet  [sr_vns_comm.c:366]
> > >       Reading 84 bytes from 0xa3960 in the heap (24 bytes at 0xa399c
> > > illegal).
> > >       Address 0xa3960 is 24 bytes into a malloc'd block at 0xa3948 of 84
> > > bytes.
> > >       This block was allocated from:
> > >             malloc         [rtlib.o]
> > >             sr_read_from_server [sr_vns_comm.c:217]
> > >             main           [sr_main.c:146]
> > >             _start         [crt1.o]
> > >       UMR: Uninitialized memory read (19 times)
> > > --------------------------------------------------------------------
> > >
> > > I don't know if it is important but you might probably want to take
> > > a look at sr_vns_comm.c just in case.
> > >
> > > Rafa
> > >
> > >
> >
> >
>
>

.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!priyanka
From: Priyanka Gupta 
Newsgroups: su.class.cs244a
Subject: arp cache length..
Date: Thu, 6 Mar 2003 09:40:49 -0800
Lines: 10
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046972451 18327 171.64.15.117 (6 Mar 2003 17:40:51 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4839


Hi..

If I am implemeting my arp cache as a linked list. Do I need to have some
sort of a max limit on the cache? (i.e only allow lets say upto 100
entries?)

thanks..
priyanka

.

Path: shelby.stanford.edu!elaine38.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Submitting Programming Assignment 3
Date: Thu, 6 Mar 2003 18:03:20 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine38.stanford.edu
X-Trace: news.Stanford.EDU 1046973800 19088 171.64.15.113 (6 Mar 2003 18:03:20 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4840


Submission of programming assignment 3 is basicaly the same as for
the other assignments.  Files to be included are:  *.c, *.h,
Makefile and rtable.  This should soon be enforced by the submission
script, if it isn't already.

SteveJ

.

Path: shelby.stanford.edu!saga5.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: ICMP packet?
Date: Thu, 6 Mar 2003 20:09:47 +0000 (UTC)
Lines: 30
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga5.stanford.edu
X-Trace: news.Stanford.EDU 1046981387 24087 171.64.15.135 (6 Mar 2003 20:09:47 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4841

I am trying to send a ICMP packet and get the wrong cksum error.

wanted to make sure if I am sending the ICMP packet
in the correct format.


for the traceroute when I recieve the IP packet:

I create a icmp packet like this:

------------
ethernet hdr
------------
ip hdr
------------
org. data
------------
icmp packet
type; code; cksum
---------------

I have no icmp data unlike the one ping sends.
is this correct or am I missing something?

the tcpdump output shows th packet going back from
my router to the client...but the error is wrong cksum 

thanks for your help.

-ceekay
.

Path: shelby.stanford.edu!not-for-mail
From:  
Newsgroups: su.class.cs244a
Subject: Re: ICMP packet?
Date: Thu, 06 Mar 2003 13:02:40 -0800
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: rains-02-17n.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1046984560 26023 128.12.188.100 (6 Mar 2003 21:02:40 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4842

Original data is never between IP hdr & ICMP packet. It is inside the 
icmp packet

Chandrakala Kappanna wrote:
> I am trying to send a ICMP packet and get the wrong cksum error.
> 
> wanted to make sure if I am sending the ICMP packet
> in the correct format.
> 
> 
> for the traceroute when I recieve the IP packet:
> 
> I create a icmp packet like this:
> 
> ------------
> ethernet hdr
> ------------
> ip hdr
> ------------
> org. data
> ------------
> icmp packet
> type; code; cksum
> ---------------
> 
> I have no icmp data unlike the one ping sends.
> is this correct or am I missing something?
> 
> the tcpdump output shows th packet going back from
> my router to the client...but the error is wrong cksum 
> 
> thanks for your help.
> 
> -ceekay

.

Path: shelby.stanford.edu!elaine24.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: ping response for Host unreachable
Date: Thu, 6 Mar 2003 14:20:03 -0800
Lines: 39
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine24.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046989205 29417 171.64.15.99 (6 Mar 2003 22:20:05 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4843


Hi,
I was wondering if this is the expected response from ping
when the host is unreachable.

elaine5:~/class/cs244a/hw3/sr_stub> ping ftp-rhm
PING ftp-rhm.Stanford.EDU (192.168.129.173): 56 data bytes
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
packet seq=0 bounced at ftp-rhm.Stanford.EDU (192.168.129.173): Host
unreachable
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
packet seq=1 bounced at ftp-rhm.Stanford.EDU (192.168.129.173): Host
unreachable
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
no reply from ftp-rhm.Stanford.EDU within 1 sec
packet seq=2 bounced at ftp-rhm.Stanford.EDU (192.168.129.173): Host
unreachable


Because my router is event driven I only check the
ARP retransmission queue when I get a packet so on average
I will send the host unreachable ICMP packet after 5 echo
packets, unless I get packets from other places too,
is that correct?

Thanks
Rafa

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: submission rules
Date: Thu, 6 Mar 2003 14:53:56 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
 
 
 
 
 
 
 
 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046991240 715 171.64.15.110 (6 Mar 2003 22:54:00 GMT)
X-Complaints-To: 
To: Rafael M Hernandez 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4844


>
> I do worry because if I don't use logging to a file my router can
> work for hours without crashing but if I use logging it usually
> stops after 15 or 20 minutes. It doesn't crash. it just seems
> to stop. This is usually accompanied with the vr-server-b
> going down, although not always.
>

  This is interesting .. there was definatly a problem with the older logging
  code which has been fixed (the write used the packet length which was often
  larger than the snaplen and therefore larger than the buffer, this would be
  increasingly problematic as the snaplen increased).  It sounds to me like
  your router is fine  though you might want to check with the updated logging
  code.  We will not be testing your routers on 15-20 minutes downloads ..
  gauronteed.

  /mc

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: arp cache length..
Date: Thu, 6 Mar 2003 14:58:37 -0800
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine35.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1046991518 918 171.64.15.110 (6 Mar 2003 22:58:38 GMT)
X-Complaints-To: 
To: Priyanka Gupta 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4845


>
> Hi..
>
> If I am implemeting my arp cache as a linked list. Do I need to have some
> sort of a max limit on the cache? (i.e only allow lets say upto 100
> entries?)

  No this isn't necessary .. though it is good you think of this as an
  unlimited arp cache lead to a remote DOS vulnerability via resource hogging
  in openbsd a few years back.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Steven Bergsieker" 
Newsgroups: su.class.cs244a
Subject: Re: Submitting Programming Assignment 3
Date: Thu, 06 Mar 2003 16:08:30 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: imladris.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
X-Trace: news.Stanford.EDU 1046995709 3969 128.12.62.22 (7 Mar 2003 00:08:29 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.0 (The whole remains beautiful)
Xref: shelby.stanford.edu su.class.cs244a:4846

On Thu, 06 Mar 2003 18:03:20 +0000, Steve Jacobson wrote:

> 
> Submission of programming assignment 3 is basicaly the same as for
> the other assignments.  Files to be included are:  *.c, *.h,
> Makefile and rtable.  This should soon be enforced by the submission
> script, if it isn't already.
> 
> SteveJ

Does that mean that we don't need/shouldn't have a README?  If we do need
a README, what should it contain?

Thanks,
Steven
.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Late for office hours today...
Date: Fri, 7 Mar 2003 01:59:47 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
X-Trace: news.Stanford.EDU 1047002387 8856 171.64.74.37 (7 Mar 2003 01:59:47 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (Linux/2.4.18-18.8.0 (i686))
Xref: shelby.stanford.edu su.class.cs244a:4847

My office hours will start about 15 minutes late today.

Apologies for any inconvenience.

  Guido
Summary: 
Keywords: 


.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ping response for Host unreachable
Date: Thu, 6 Mar 2003 19:51:05 -0800
Lines: 46
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047009067 13112 171.64.15.117 (7 Mar 2003 03:51:07 GMT)
X-Complaints-To: 
To: Rafael M Hernandez 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4848


 yup..

 /mc

>
> Hi,
> I was wondering if this is the expected response from ping
> when the host is unreachable.
>
> elaine5:~/class/cs244a/hw3/sr_stub> ping ftp-rhm
> PING ftp-rhm.Stanford.EDU (192.168.129.173): 56 data bytes
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> packet seq=0 bounced at ftp-rhm.Stanford.EDU (192.168.129.173): Host
> unreachable
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> packet seq=1 bounced at ftp-rhm.Stanford.EDU (192.168.129.173): Host
> unreachable
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> no reply from ftp-rhm.Stanford.EDU within 1 sec
> packet seq=2 bounced at ftp-rhm.Stanford.EDU (192.168.129.173): Host
> unreachable
>
>
> Because my router is event driven I only check the
> ARP retransmission queue when I get a packet so on average
> I will send the host unreachable ICMP packet after 5 echo
> packets, unless I get packets from other places too,
> is that correct?
>
> Thanks
> Rafa
>
>

.

Path: shelby.stanford.edu!not-for-mail
From: Susan Noreen Shepard 
Newsgroups: su.class.cs244a
Subject: ICMP ttl/port unreachable precedence?
Date: Fri, 7 Mar 2003 04:19:01 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1047010741 13723 171.64.15.81 (7 Mar 2003 04:19:01 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4849

Hopefully I didn't miss the answer in the newsgroup, but...

If I have a situation where it is valid to send either an ICMP ttl
timeout message or an ICMP port unreachable message, can I choose
either to send? I assume that I never send both.  My default is
to send an ICMP ttl timeout.  Is this okay? If I traceroute to
www-shepard8 or ftp-shepard8, they seem to generate
port/destination unreachable messages, but I think it makes more
sense to generate ICMP ttl timeout (and should be equally valid).
I didn't find anything in the RFC/newsgroup/handouts to suggest
precedence among the possible messages. Thoughts?

-Susan

.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: sequence of IP header checks
Date: Thu, 6 Mar 2003 20:36:54 -0800
Lines: 34
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047011814 14717 171.64.15.82 (7 Mar 2003 04:36:54 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4850

just to clarify the sequence of checks to be performed on the various
fields of an incoming packet's IP header:

step 1: make sure the packet is not corrupted (i.e. checksum is correct)

step 2: check if it's destined to a router interface, in which case ICMP
port unreachable error is returned
step 3: check if ip_dst is in our routing table. if not, ICMP host
unreachable is returned
step 4: check if TTL = 0 or 1, in which case, ICMP time exceeded error is
returned.

IF we were to check TTL between step 1 and step 2, strange results may
occur (which I'm not sure are the correct behaviors).

for instance, delete www-userId route from your "rtable", but keeping the
default route. if you do "traceroute www-userID", the last TWO
hops will both appear from userID-router-1(!), one associated with ICMP
TTL error and the other associated with ICMP host unreachable error. I
believe the correct behavior is only sending ICMP host unreachable, which
is why TTL is checked in step 4 above.

can any TA confirm the expected behavior?

also, if you check TTL between step 1 and 2, and do "traceroute
userID-router-3", you will see, again, TWO hops at the end, both from
userID-router-1. according to previous threads, this is WRONG. only one
ICMP error (port unreachable) should be returned.

anyone has other insights about the sequence of checks to be carried out?

thanks!
Tan

.

Path: shelby.stanford.edu!not-for-mail
From: Susan Noreen Shepard 
Newsgroups: su.class.cs244a
Subject: ICMP format when <64bits data?
Date: Fri, 7 Mar 2003 04:40:24 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine16.stanford.edu
X-Trace: news.Stanford.EDU 1047012024 14227 171.64.15.81 (7 Mar 2003 04:40:24 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4851

For the ICMP messages that require sending back 64 bits of the data
portion of the original IP packet, what should we do if the IP packet
doesn't contain at least 64 bits of data?  Is this even possible? (I would
think yes--anything's possible)  Should we always send back 64 bits,
padding the rest of the space with zeros?  Should we send back min(data
len, 64 bits)?

Susan
.

Path: shelby.stanford.edu!elaine31.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ICMP ttl/port unreachable precedence?
Date: Thu, 6 Mar 2003 20:50:56 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine31.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047012659 15355 171.64.15.106 (7 Mar 2003 04:50:59 GMT)
X-Complaints-To: 
To: Susan Noreen Shepard 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4852

> Hopefully I didn't miss the answer in the newsgroup, but...
>
> If I have a situation where it is valid to send either an ICMP ttl
> timeout message or an ICMP port unreachable message, can I choose
> either to send? I assume that I never send both.  My default is
> to send an ICMP ttl timeout.  Is this okay? If I traceroute to
> www-shepard8 or ftp-shepard8, they seem to generate
> port/destination unreachable messages, but I think it makes more
> sense to generate ICMP ttl timeout (and should be equally valid).
> I didn't find anything in the RFC/newsgroup/handouts to suggest
> precedence among the possible messages. Thoughts?

  This has actually been discussed ... if a packet is destined to a particular
  interface on your router , the router is not considered a hop and thus
  should not decrement the TTL (so you wouldn't send a time exceeded unless the
  TTL was 0 on receipt which should never happen (but could!)).

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: sequence of IP header checks
Date: Fri, 7 Mar 2003 06:12:48 +0000 (UTC)
Lines: 48
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1047017568 18059 171.64.15.77 (7 Mar 2003 06:12:48 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4853

Tan,

> just to clarify the sequence of checks to be performed on the various
> fields of an incoming packet's IP header:

> step 1: make sure the packet is not corrupted (i.e. checksum is correct)
> step 2: check if it's destined to a router interface, in which case ICMP
> port unreachable error is returned
> step 3: check if ip_dst is in our routing table. if not, ICMP host
> unreachable is returned
> step 4: check if TTL = 0 or 1, in which case, ICMP time exceeded error is
> returned.

Correct!

> IF we were to check TTL between step 1 and step 2, strange results may
> occur (which I'm not sure are the correct behaviors).

> for instance, delete www-userId route from your "rtable", but keeping the
> default route. if you do "traceroute www-userID", the last TWO
> hops will both appear from userID-router-1(!), one associated with ICMP
> TTL error and the other associated with ICMP host unreachable error. I
> believe the correct behavior is only sending ICMP host unreachable, which
> is why TTL is checked in step 4 above.

You are right. You are doing the right thing when using the output of ping
and traceroute to get authoritive answers. If they show the same as for
other routers things are correct. Alternatively look into the RFCs but
that will likely take more time.

  Guido





> can any TA confirm the expected behavior?

> also, if you check TTL between step 1 and 2, and do "traceroute
> userID-router-3", you will see, again, TWO hops at the end, both from
> userID-router-1. according to previous threads, this is WRONG. only one
> ICMP error (port unreachable) should be returned.

> anyone has other insights about the sequence of checks to be carried out?

> thanks!
> Tan

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: ICMP format when <64bits data?
Date: Fri, 7 Mar 2003 06:14:29 +0000 (UTC)
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1047017669 18059 171.64.15.77 (7 Mar 2003 06:14:29 GMT)
X-Complaints-To: 
User-Agent: tin/1.4.5-20010409 ("One More Nightmare") (UNIX) (SunOS/5.8 (sun4u))
Xref: shelby.stanford.edu su.class.cs244a:4854

Susan,

> For the ICMP messages that require sending back 64 bits of the data
> portion of the original IP packet, what should we do if the IP packet
> doesn't contain at least 64 bits of data?  Is this even possible? (I would
> think yes--anything's possible)  Should we always send back 64 bits,
> padding the rest of the space with zeros?  Should we send back min(data
> len, 64 bits)?

Check the RFC for the authotitive answer (I believe it is min()). Then
again the test-script definitely won't explicitly test this. If traceroute
and ping are happy so are we.

  Guido
.

Path: shelby.stanford.edu!not-for-mail
From: Kevin Christopher 
Newsgroups: su.class.cs244a
Subject: Reliability of servers
Date: Thu, 06 Mar 2003 22:50:19 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: radicalbox.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1047019815 20106 128.12.72.54 (7 Mar 2003 06:50:15 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4855

Are the virtual servers set up to be 100% reliable?  I have my setup 
running with ~5% packet loss (out of ~30 packets) right now... could the 
setup be dropping packets and this be normal behavior, or ought I be 
digging through my code to find why I'm dropping packets?  (I haven't 
spent time looking yet, but I thought I'd ask what should be a quick 
question)

-Kevin

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!myc
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: timestamps
Date: Thu, 6 Mar 2003 23:14:17 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine34.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047021259 20938 171.64.15.109 (7 Mar 2003 07:14:19 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4856

Hi,

I have the following questions:

Upon receiving a traceroute ICMP packet, we are supposed to update the
timestamps in it. What exactly is 32 bits of milliseconds since midnight
UT? How do we compute it?

Another question, when we detect corrupted checksum in ICMP packets, do we
drop it and send another ICMP packet back to the original sender?

Thanks,
Mingying

.

Path: shelby.stanford.edu!elaine34.Stanford.EDU!myc
From: Mingying Chen 
Newsgroups: su.class.cs244a
Subject: Re: timestamps
Date: Thu, 6 Mar 2003 23:59:28 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine34.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047023971 22440 171.64.15.109 (7 Mar 2003 07:59:31 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4857

Never mind the question. I totally got it wrong.


On Thu, 6 Mar 2003, Mingying Chen wrote:

> Hi,
>
> I have the following questions:
>
> Upon receiving a traceroute ICMP packet, we are supposed to update the
> timestamps in it. What exactly is 32 bits of milliseconds since midnight
> UT? How do we compute it?
>
> Another question, when we detect corrupted checksum in ICMP packets, do we
> drop it and send another ICMP packet back to the original sender?
>
> Thanks,
> Mingying
>
>

.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Submitting Programming Assignment 3
Date: Fri, 7 Mar 2003 09:59:48 +0000 (UTC)
Lines: 9
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1047031188 26536 171.64.15.115 (7 Mar 2003 09:59:48 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4858


>Does that mean that we don't need/shouldn't have a README?  If we do need
>a README, what should it contain?

You should have a README (and the script should enforce this).  This
can just be a short overview of any unusual/important design decisions
or assumptions you feel are worth pointing out... we aren't looking for
too much here.

.

Path: shelby.stanford.edu!not-for-mail
From: "Enriko Aryanto" 
Newsgroups: su.class.cs244a
Subject: Somebody replying to my ARP request
Date: Fri, 7 Mar 2003 02:13:59 -0800
Lines: 20
Distribution: su
Message-ID: 
NNTP-Posting-Host: earyanto.stanford.edu
X-Trace: news.Stanford.EDU 1047032039 27683 128.12.196.90 (7 Mar 2003 10:13:59 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4859

I tried pinging ftp-earyanto. When my router issued an ARP request "who has
192.168.129.83" (ftp-earyanto is at 192.168.129.83), it was replied
"192.168.129.83 is at 0:e0:81:4:26:d8". It seemed correct, wowever, ethereal
showed that the reply source was "ftp-brandon"!!

This is the tcpdump of those two packets:

01:55:09.060646 70:0:0:11:0:6 Broadcast arp 42: arp who-has
ftp-earyanto.Stanford.EDU (Broadcast) tell earyanto-router-3.Stanford.EDU
                         0001 0800 0604 0001 7000 0011 0006 c0a8
                         8152 ffff ffff ffff c0a8 8153
01:55:09.062051 0:e0:81:4:26:d8 70:0:0:11:0:6 arp 84: arp reply
ftp-earyanto.Stanford.EDU is-at 0:e0:81:4:26:d8
                         0001 0800 0604 0002 00e0 8104 26d8 c0a8
                         8153 7000 0011 0006 c0a8 8152 0000 0000
                         0000 0000 0000 0000 0000 0000 0000 1213
                         1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
                         2425 2627 2829


.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: TA assignment
Date: Fri, 7 Mar 2003 02:20:43 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047032444 27836 171.64.15.82 (7 Mar 2003 10:20:44 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4860

does anyone know who our assigned TAs are for this program? i vaguely
remember TAs rotate each time but haven't received an email notification
of the new TA for this one.

thanks!
Tan

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Reliability of servers
Date: Fri, 7 Mar 2003 08:16:54 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047053815 8388 171.64.15.100 (7 Mar 2003 16:16:55 GMT)
X-Complaints-To: 
To: Kevin Christopher 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4861


> Are the virtual servers set up to be 100% reliable?  I have my setup
> running with ~5% packet loss (out of ~30 packets) right now... could the
> setup be dropping packets and this be normal behavior, or ought I be
> digging through my code to find why I'm dropping packets?  (I haven't
> spent time looking yet, but I thought I'd ask what should be a quick
> question)

  You can expect some packet loss under heavy load.

  /mc

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: timestamps
Date: Fri, 7 Mar 2003 08:19:14 -0800
Lines: 20
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047053955 8467 171.64.15.100 (7 Mar 2003 16:19:15 GMT)
X-Complaints-To: 
To: Mingying Chen 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4862


> Hi,
>
> I have the following questions:
>
> Upon receiving a traceroute ICMP packet, we are supposed to update the
> timestamps in it. What exactly is 32 bits of milliseconds since midnight
> UT? How do we compute it?

 timestamp?

 there is no timestamp field in ICMP time exceeded.

> Another question, when we detect corrupted checksum in ICMP packets, do we
> drop it and send another ICMP packet back to the original sender?

 no, just drop it.

 /mc

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: Somebody replying to my ARP request
Date: Fri, 7 Mar 2003 08:22:40 -0800
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047054162 8584 171.64.15.100 (7 Mar 2003 16:22:42 GMT)
X-Complaints-To: 
To: Enriko Aryanto 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4863


> I tried pinging ftp-earyanto. When my router issued an ARP request "who has
> 192.168.129.83" (ftp-earyanto is at 192.168.129.83), it was replied
> "192.168.129.83 is at 0:e0:81:4:26:d8". It seemed correct, wowever, ethereal
> showed that the reply source was "ftp-brandon"!!

 Do I've seen wierd stuff from ftp-brandon before in other students traces but
 I don't understand what is going on here .. you are telling me that the
 address 192.168.129.83 is resolving to two different names?  It would help if
 you could clarify just a tad. Thanks.

 /mc

>
> This is the tcpdump of those two packets:
>
> 01:55:09.060646 70:0:0:11:0:6 Broadcast arp 42: arp who-has
> ftp-earyanto.Stanford.EDU (Broadcast) tell earyanto-router-3.Stanford.EDU
>                          0001 0800 0604 0001 7000 0011 0006 c0a8
>                          8152 ffff ffff ffff c0a8 8153
> 01:55:09.062051 0:e0:81:4:26:d8 70:0:0:11:0:6 arp 84: arp reply
> ftp-earyanto.Stanford.EDU is-at 0:e0:81:4:26:d8
>                          0001 0800 0604 0002 00e0 8104 26d8 c0a8
>                          8153 7000 0011 0006 c0a8 8152 0000 0000
>                          0000 0000 0000 0000 0000 0000 0000 1213
>                          1415 1617 1819 1a1b 1c1d 1e1f 2021 2223
>                          2425 2627 2829
>
>
>

.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: traceroute problems?
Date: Fri, 7 Mar 2003 18:41:53 +0000 (UTC)
Lines: 28
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1047062513 13554 171.64.15.105 (7 Mar 2003 18:41:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4864

I get a traceroute request for my router.
I reply with a ICMP port unreacheble message. I even tried doing
host unreachable message.

but nothing happens.

any ideas?

thanx,
ceekay


10:39:00.141603 0:e0:81:3:fd:9e 70:0:0:c:0:1 ip 84: elaine21.Stanford.EDU.54542 > ceekay-router
-1.Stanford.EDU.33447:  [no cksum] udp 10 (DF) [ttl 1] (id 54143, len 38)
                         4500 0026 d37f 4000 0111 aaf7 ab40 0f56
                         c0a8 8011 d50e 82a7 0012 0000 3e68 e744
                         0002 1b24 0d05 0000 0000 0000 0000 0000
                         0000 0000 0041 0000 0000 ffff ffff ffff
                         00e0 8103 fd9e
10:39:00.151297 70:0:0:c:0:1 0:e0:81:3:fd:9e ip 70: ceekay-router-1.Stanford.EDU > elaine21.Sta
nford.EDU: icmp: ceekay-router-1.Stanford.EDU udp port 33447 unreachable for elaine21.Stanford.
EDU.54542 > ceekay-router-1.Stanford.EDU.33447:  [no cksum] udp 10 (DF) [ttl 1] (id 54143, len 
38) (DF) [ttl 1] (id 54143, len 56)
                         4500 0038 d37f 4000 0101 aaf5 c0a8 8011
                         ab40 0f56 0303 a534 0000 0000 4500 0026
                         d37f 4000 0111 aaf7 ab40 0f56 c0a8 8011
                         d50e 82a7 0012 0000

.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: ip_len filed in ip_header
Date: Fri, 7 Mar 2003 19:05:05 +0000 (UTC)
Lines: 13
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1047063905 14457 171.64.15.105 (7 Mar 2003 19:05:05 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4865

does the ip_len (length of the IP datagram) include
the length of the IP header also?

I get a packet of size 60 (len = 60)

Ethernet header = 14 bytes
IP header   = 20 bytes
IP_len is set to 38.

so if ip_len includes the IP header
still the sum will be 52 bytes?

where are the 8 bytes?
.

Path: shelby.stanford.edu!saga19.Stanford.EDU!priyank9
From: Priyank Kshitij Patel 
Newsgroups: su.class.cs244a
Subject: which TA to submit
Date: Fri, 7 Mar 2003 11:16:07 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga19.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047064569 14856 171.64.15.149 (7 Mar 2003 19:16:09 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4866

Can anybody specify which TA should the program be submitted this time??


Priyank

.

Path: shelby.stanford.edu!elaine22.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: ip_len filed in ip_header
Date: Fri, 7 Mar 2003 11:22:21 -0800
Lines: 24
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine22.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047064943 15159 171.64.15.87 (7 Mar 2003 19:22:23 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4867



> does the ip_len (length of the IP datagram) include
> the length of the IP header also?

 I don't know which field/variable you are referring to. The total length field
 includes the header.

>
> I get a packet of size 60 (len = 60)
>
> Ethernet header = 14 bytes
> IP header   = 20 bytes
> IP_len is set to 38.
>
> so if ip_len includes the IP header
> still the sum will be 52 bytes?
> where are the 8 bytes?

 minimum ethernet packet size is 60 bytes .. smaller packets are padded by the
 OS.

 /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "Bina Vasavda" 
Newsgroups: su.class.cs244a
Subject: Re: which TA to submit
Date: Fri, 7 Mar 2003 11:27:45 -0800
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: ev-02-hos4d.stanford.edu
X-Trace: news.Stanford.EDU 1047065266 15378 128.12.154.94 (7 Mar 2003 19:27:46 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4868

I'm pretty sure you just submit to your own TA, and they rotate themselves.
The email before was because some people's own TA was switched.
Bina
"Priyank Kshitij Patel"  wrote in message

> Can anybody specify which TA should the program be submitted this time??
>
>
> Priyank
>


.

Path: shelby.stanford.edu!elaine43.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: which TA to submit
Date: Fri, 7 Mar 2003 20:04:06 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine43.stanford.edu
X-Trace: news.Stanford.EDU 1047067446 16675 171.64.15.118 (7 Mar 2003 20:04:06 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4869


>I'm pretty sure you just submit to your own TA, and they rotate themselves.
>The email before was because some people's own TA was switched.

Correct--just submit to your initially assigned TA, and we'll
figure out some random rotation before grading.

.

Path: shelby.stanford.edu!elaine43.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: TA assignment
Date: Fri, 7 Mar 2003 20:05:04 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine43.stanford.edu
X-Trace: news.Stanford.EDU 1047067504 16703 171.64.15.118 (7 Mar 2003 20:05:04 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4870


>does anyone know who our assigned TAs are for this program? i vaguely
>remember TAs rotate each time but haven't received an email notification
>of the new TA for this one.

Please submit to whomever you were assigned initially.

.

Path: shelby.stanford.edu!not-for-mail
From: "Steven Bergsieker" 
Newsgroups: su.class.cs244a
Subject: Periodic blocks in sr_read_from_server
Date: Fri, 07 Mar 2003 12:35:30 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: imladris.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
X-Trace: news.Stanford.EDU 1047069329 17883 128.12.62.22 (7 Mar 2003 20:35:29 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.0 (The whole remains beautiful)
Xref: shelby.stanford.edu su.class.cs244a:4871

Is anyone else having problems with sr_read_from_server occasionally
blocking on a call to _so_recv?  I haven't changed any of the code that
calls on that function, but my router just periodically stops working.  I
would think that sending any sort of packet to my router would "wake up"
the socket, but that doesn't appear to be the case.  Could the server just
be dropping all my packets?

Thanks,
Steven
.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: checking traceroute output?
Date: Fri, 7 Mar 2003 21:59:39 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1047074379 20998 171.64.15.105 (7 Mar 2003 21:59:39 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4872

is this correct?

traceroute ftp-ceekay
traceroute to ftp-ceekay.Stanford.EDU (192.168.129.73): 1-30 hops, 38 byte packets
 1  leland-gateway.Stanford.EDU (171.64.15.129)  1.17 ms  1.04 ms  1.15 ms
 2  smra-rtr.Stanford.EDU (171.64.1.236)  1.52 ms (ttl=63!)  1.26 ms (ttl=63!)  1.23 ms (ttl=63!)
 3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.951 ms  0.852 ms  1.38 ms
 4  vr-firewall.Stanford.EDU (171.64.74.9)  1.14 ms  0.868 ms  0.569 ms
 5  ftp-ceekay.Stanford.EDU (192.168.129.73)  5.65 ms (ttl=60!)  2.03 ms (ttl=60!)  2.53 ms (ttl=60!)


or shud my router be listed before ftp-ceekay.stanford.edu?
.

Path: shelby.stanford.edu!not-for-mail
From: Siddharth Joshi 
Newsgroups: su.class.cs244a
Subject: purify
Date: Fri, 07 Mar 2003 14:01:13 -0800
Organization: EE, Stanford University
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine32.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1047074473 21002 171.64.15.107 (7 Mar 2003 22:01:13 GMT)
X-Complaints-To: 
X-Mailer: Mozilla 4.8 [en] (X11; U; SunOS 5.8 sun4u)
X-Accept-Language: en
Xref: shelby.stanford.edu su.class.cs244a:4873

Do we need to give purify output.
??

SIDJ
.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: checking traceroute output?
Date: Fri, 7 Mar 2003 15:00:09 -0800
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047078011 23964 171.64.15.72 (7 Mar 2003 23:00:11 GMT)
X-Complaints-To: 
To: Chandrakala Kappanna 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4874


> is this correct?
>
> traceroute ftp-ceekay
> traceroute to ftp-ceekay.Stanford.EDU (192.168.129.73): 1-30 hops, 38 byte packets
>  1  leland-gateway.Stanford.EDU (171.64.15.129)  1.17 ms  1.04 ms  1.15 ms
>  2  smra-rtr.Stanford.EDU (171.64.1.236)  1.52 ms (ttl=63!)  1.26 ms (ttl=63!)  1.23 ms (ttl=63!)
>  3  Gates-rtr.Stanford.EDU (171.64.1.44)  0.951 ms  0.852 ms  1.38 ms
>  4  vr-firewall.Stanford.EDU (171.64.74.9)  1.14 ms  0.868 ms  0.569 ms
>  5  ftp-ceekay.Stanford.EDU (192.168.129.73)  5.65 ms (ttl=60!)  2.03 ms (ttl=60!)  2.53 ms (ttl=60!)

 no that is not correct ,,, your router should be replying

 /mc

> or shud my router be listed before ftp-ceekay.stanford.edu?
>

.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: purify
Date: Fri, 7 Mar 2003 15:00:22 -0800
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047078024 23975 171.64.15.72 (7 Mar 2003 23:00:24 GMT)
X-Complaints-To: 
To: Siddharth Joshi 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4875


 nope!

 /mc

> Do we need to give purify output.
> ??
>
> SIDJ
>

.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!schaff
From: Justin Michael Schaffer 
Newsgroups: su.class.cs244a
Subject: pings...
Date: Fri, 7 Mar 2003 15:06:11 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047078374 24164 171.64.15.112 (7 Mar 2003 23:06:14 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4876

I know this is last minute...
but for my ping output i get:

elaine22:~> ping 192.168.128.71
PING schaff-router-1.Stanford.EDU (192.168.128.71): 56 data bytes
64 bytes from schaff-router-1.Stanford.EDU (192.168.128.71): seq=0 ttl=251
time=0.000 ms.
64 bytes from schaff-router-1.Stanford.EDU (192.168.128.71): seq=1 ttl=251
time=0.000 ms.
64 bytes from schaff-router-1.Stanford.EDU (192.168.128.71): seq=2 ttl=251
time=0.000 ms.

how do i set the time to not be 0.000 ms?

Thanx

.

Path: shelby.stanford.edu!elaine7.Stanford.EDU!casado
From: Martin Casado 
Newsgroups: su.class.cs244a
Subject: Re: pings...
Date: Fri, 7 Mar 2003 15:59:41 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047081582 26453 171.64.15.72 (7 Mar 2003 23:59:42 GMT)
X-Complaints-To: 
To: Justin Michael Schaffer 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4877

> I know this is last minute...
> but for my ping output i get:
>
> elaine22:~> ping 192.168.128.71
> PING schaff-router-1.Stanford.EDU (192.168.128.71): 56 data bytes
> 64 bytes from schaff-router-1.Stanford.EDU (192.168.128.71): seq=0 ttl=251
> time=0.000 ms.
> 64 bytes from schaff-router-1.Stanford.EDU (192.168.128.71): seq=1 ttl=251
> time=0.000 ms.
> 64 bytes from schaff-router-1.Stanford.EDU (192.168.128.71): seq=2 ttl=251
> time=0.000 ms.
>
> how do i set the time to not be 0.000 ms?

  I believe that is calculated by ping intself .. you shouldn't have to worry
  about it.

  /mc

.

Path: shelby.stanford.edu!not-for-mail
From: "sc" 
Newsgroups: su.class.cs244a
Subject: Re: ip_len filed in ip_header
Date: Fri, 7 Mar 2003 16:26:24 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: avengingspirit.stanford.edu
X-Trace: news.Stanford.EDU 1047083185 27506 128.12.22.55 (8 Mar 2003 00:26:25 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4878

Thanks for asking this. That fixed my bug =)

              -- sc

"Chandrakala Kappanna"  wrote in message

> does the ip_len (length of the IP datagram) include
> the length of the IP header also?
>
> I get a packet of size 60 (len = 60)
>
> Ethernet header = 14 bytes
> IP header   = 20 bytes
> IP_len is set to 38.
>
> so if ip_len includes the IP header
> still the sum will be 52 bytes?
>
> where are the 8 bytes?


.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: CRC Double-bit Error Detection
Date: Wed, 12 Mar 2003 02:00:14 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 11
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine6.stanford.edu
X-Trace: news.Stanford.EDU 1047434414 9449 171.64.15.71 (12 Mar 2003 02:00:14 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4879

A clarification to the "CRC Error Detection" slide from last
Friday's problem session:  A generator polynomial with at
least three terms will catch all double-bit errors, except
when the two errored bits are adjacent.  I've corrected the
slide.

BTW, the problem session slides are available on-line, from
the Schedule, Handouts & Homeworks page.

SteveJ

.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Friday 6-7PM Office Hours Moved
Date: Wed, 12 Mar 2003 02:04:34 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine6.stanford.edu
X-Trace: news.Stanford.EDU 1047434674 9680 171.64.15.71 (12 Mar 2003 02:04:34 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4880

The TA office hours for Friday, March 14, 6-7 PM, will be moved
from Sweet Hall to Gates.  Tentatively, the room will be Gates 359,
but watch the newsgroup for further changes.

SteveJ

.

Path: shelby.stanford.edu!not-for-mail
From: "Howard Tsai" 
Newsgroups: su.class.cs244a
Subject: Problem Set #4 question
Date: Wed, 12 Mar 2003 19:59:32 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: ev-02-lr90f.stanford.edu
X-Trace: news.Stanford.EDU 1047527973 3122 128.12.158.11 (13 Mar 2003 03:59:33 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4881

Are we suppose to turn in answers on a separate sheet of paper?  Or can we
just put the answers on the handout directly and turn that in?


.

Path: shelby.stanford.edu!elaine14.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set #4 question
Date: Thu, 13 Mar 2003 05:00:58 +0000 (UTC)
Lines: 5
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine14.stanford.edu
X-Trace: news.Stanford.EDU 1047531658 5192 171.64.15.79 (13 Mar 2003 05:00:58 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4882


>Are we suppose to turn in answers on a separate sheet of paper?  Or can we
>just put the answers on the handout directly and turn that in?

Either's fine.
.

Path: shelby.stanford.edu!not-for-mail
From: "Steven Bergsieker" 
Newsgroups: su.class.cs244a
Subject: PS 4.10
Date: Wed, 12 Mar 2003 22:57:39 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: imladris.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
X-Trace: news.Stanford.EDU 1047538659 8378 128.12.62.22 (13 Mar 2003 06:57:39 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.0 (The whole remains beautiful)
Xref: shelby.stanford.edu su.class.cs244a:4883

For problem 10, can we assume that an interface knows whether it is a 10
or 100Mb interface, and thus does not have to let the elasticity buffer
fill to halfway as in the lecture examples (where the receiving interface
did not know if it was faster or slower than the sending interface, and
had to account for both cases by letting the buffer fill partway to make
sure that it would not run dry or overflow)?

If we can assume that an interface knows its own speed, then it knows that
its speed is either <= (for 10Mb) or >= (for 100Mb) than the sending
interface, so it can either begin reading right away (for 10Mb) or wait
for the buffer to fill partway (for 100Mb).

Thanks,
Steven
.

Path: shelby.stanford.edu!elaine42.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: PS #4 Q12
Date: Thu, 13 Mar 2003 01:04:01 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine42.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047546245 12240 171.64.15.117 (13 Mar 2003 09:04:05 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4884

Hi,
question 12 talks about a 2-D parity code. What kind of code is that?
It also makes a reference to Homework 4 but I can't see anywhere else
in the homework that kind of code.

Thanks
Rafa

.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS 4.10
Date: Thu, 13 Mar 2003 16:11:10 +0000 (UTC)
Lines: 10
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1047571870 26037 171.64.15.84 (13 Mar 2003 16:11:10 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4885


>For problem 10, can we assume that an interface knows whether it is a 10
>or 100Mb interface, and thus does not have to let the elasticity buffer
>fill to halfway as in the lecture examples (where the receiving interface
>did not know if it was faster or slower than the sending interface, and
>had to account for both cases by letting the buffer fill partway to make
>sure that it would not run dry or overflow)?

Yep (hence the +/-0 ppm clock tolerance assumption in the problem).

.

Path: shelby.stanford.edu!elaine19.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: PS #4 Q12
Date: Thu, 13 Mar 2003 16:19:22 +0000 (UTC)
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine19.stanford.edu
X-Trace: news.Stanford.EDU 1047572362 26208 171.64.15.84 (13 Mar 2003 16:19:22 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4886


>question 12 talks about a 2-D parity code. What kind of code is that?

You don't need to know this to answer this particular question, but to
satisfy your curiosity it was from a homework question that was unused
this year.  The basic idea is to arrange your data and parity bits as
shown below:

d1,1  ...  d1,j|d1,j+1
d2,1  ...  d2,j|d2,j+1
..              |.
..              |.
..              |.
di,1  ...  di,j|di,j+1
---------------+---------
di+1,1...di+1,j|di+1,j+1

Your i*j data bits are organized into an array (the upper left box in the
figure), and parity is calculated over both rows and columns of the array
(the other three boxes, i.e. the d*,j+1 and di+1,* entries, giving i+j+1
parity bits in total).

(I doubt anyone actually uses this code).
.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Problem Set 4 questions
Date: Thu, 13 Mar 2003 14:11:53 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1047593470 9451 128.12.184.109 (13 Mar 2003 22:11:10 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4887

In Q.10, on an interface whose clock is operating at 10Mbps and has no clock
tolerance, how can we put the data from a 100Mbps link in the elasticity
buffer? What I understand is that the elasticity buffer is used to take care
of rates which are within the clock tolerance range. ( referring ex. in
slide 23 handout 13). Somebody, please make this clear.

In Q.14, Probability that nothing is successfully transmitted in a given
time slot.. Is this same as probability a collision will occur? Do we call
the event that no source puts a packet on the link , a no successful
transmission? I dont think we should.Please confirm.

Thanx
Pavan



.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: problem set #4 problem 6
Date: Thu, 13 Mar 2003 16:11:10 -0800
Lines: 21
Distribution: su
Message-ID: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1047600670 13852 128.12.91.22 (14 Mar 2003 00:11:10 GMT)
X-Complaints-To: 
To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4888

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I have a quick question on the last problem set, question #6...

Choice (d) of this question refers to a "forwarding table."

Is the table shown on slide #31 of handout #5 part of this forwarding
table, or is it a separate table in the router?

Thanks,
Will Robinson

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+cR394uIcqiwjnrURAh+MAJ9yunI2PzC+K6PrTWU8tTrBlGYeyQCfYD9n
ivFAycQzhOmSVN759966rfo=
=0JG0
-----END PGP SIGNATURE-----

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Problem Set #4
Date: Thu, 13 Mar 2003 18:48:18 -0800
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1047610099 19696 128.12.85.0 (14 Mar 2003 02:48:19 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4889

I have a couple questions regarding the problem set:

1. In Question 6, option d mentions Reverse Path Forwarding. Is this
equivalent to Reverse Path Broadcasting or Reverse Path Multicast?

2. For question 15, do we really need to show the evolution of the routing
table for each router? It seems that this problem is doable with only
looking at the routing table entry for A in each router, instead of having
to maintain an 64 entry table over several steps. In class, Prof. McKeown
seemed to do it without having to compute the whole routing table, and it
seems as though knowing the whole routing table at each step doesn't really
buy us much.

3. The web site says the problem is due at 5, whereas the problem set itself
says it is due at 3. Which is it?

Finally, it seems as though Guido didn't hold his office hours today. Will
Matt be holding his office hours tomorrow, and will they be in Sweet Hall?
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Problem Set 4
Date: Thu, 13 Mar 2003 19:49:48 -0800
Lines: 16
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1047613789 21730 128.12.85.0 (14 Mar 2003 03:49:49 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4890

Also, on question 15d, it states that C should be the root, but other than
that, do always take the lowest lettered router seen so far by a given
router as what it considers the root?

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set 4 questions
Date: Fri, 14 Mar 2003 04:06:24 +0000 (UTC)
Lines: 25
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1047614784 22307 171.64.15.112 (14 Mar 2003 04:06:24 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4891


>In Q.10, on an interface whose clock is operating at 10Mbps and has no clock
>tolerance, how can we put the data from a 100Mbps link in the elasticity
>buffer? What I understand is that the elasticity buffer is used to take care
>of rates which are within the clock tolerance range. ( referring ex. in
>slide 23 handout 13). Somebody, please make this clear.

The idea is to apply the same concepts to this problem, i.e. if you draw
similar graphs to those that were done in class to derive the original
elasticity buffer constraints, the problem should make sense.  (And this
is really just an extreme version of what a normal elasticity buffer is
doing).

>In Q.14, Probability that nothing is successfully transmitted in a given
>time slot.. Is this same as probability a collision will occur? Do we call
>the event that no source puts a packet on the link , a no successful
>transmission? I dont think we should.Please confirm.

My interpretation would be that if no host tries to send, then no packet
is successfully transmitted in that time slot.  (After all, since all hosts
have packets to send, you want to pick p so as to maximize the probability
that a given packet gets through--this exercise was done in class, if you
go back and look again at the CSMA/CD lecture notes.  So whether a packet
isn't transmitted successfully because of a collision, or because of a poor
choice of p, is somewhat irrelevant to the sender).
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: problem set #4 problem 6
Date: Fri, 14 Mar 2003 04:12:54 +0000 (UTC)
Lines: 11
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1047615174 22507 171.64.15.112 (14 Mar 2003 04:12:54 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4892


>I have a quick question on the last problem set, question #6...

>Choice (d) of this question refers to a "forwarding table."

>Is the table shown on slide #31 of handout #5 part of this forwarding
>table, or is it a separate table in the router?

Would it make sense to have that table around and yet still use reverse-path
broadcast?  Please look again at how RPB works, and I think you'll most
likely answer your own question.
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set #4
Date: Fri, 14 Mar 2003 04:19:26 +0000 (UTC)
Lines: 31
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1047615566 22612 171.64.15.112 (14 Mar 2003 04:19:26 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4893


>1. In Question 6, option d mentions Reverse Path Forwarding. Is this
>equivalent to Reverse Path Broadcasting or Reverse Path Multicast?

Roughly speaking; it's the process used by RPB/RPM to forward packets toward
their destination(s).

>2. For question 15, do we really need to show the evolution of the routing
>table for each router? It seems that this problem is doable with only
>looking at the routing table entry for A in each router, instead of having
>to maintain an 64 entry table over several steps. In class, Prof. McKeown
>seemed to do it without having to compute the whole routing table, and it
>seems as though knowing the whole routing table at each step doesn't really
>buy us much.

You can just include the salient information at each step.

>3. The web site says the problem is due at 5, whereas the problem set itself
>says it is due at 3. Which is it?

Sorry, this should indeed be 3pm as stated on the problem set.  I'll send out
an announcement to clarify.

>Finally, it seems as though Guido didn't hold his office hours today. Will
>Matt be holding his office hours tomorrow, and will they be in Sweet Hall?

Unfortunately, yes, and yes.

>"Mmm... unexplained bacon." - Homer Simpson

Ooh, floor pie.
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set 4
Date: Fri, 14 Mar 2003 04:20:57 +0000 (UTC)
Lines: 7
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine37.stanford.edu
X-Trace: news.Stanford.EDU 1047615657 22740 171.64.15.112 (14 Mar 2003 04:20:57 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4894


>Also, on question 15d, it states that C should be the root, but other than
>that, do always take the lowest lettered router seen so far by a given
>router as what it considers the root?

You don't need to run through the algorithm itself, you can just find this
by inspection if you'd like.  I don't think there are any ties, as I recall.
.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: Handout 13.
Date: Fri, 14 Mar 2003 04:27:24 -0800
Lines: 9
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine12.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047644845 8180 171.64.15.77 (14 Mar 2003 12:27:25 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4895

Hi,

can you post the pdf of handout 13. On the website only the ppt is
posted. I went to the handout bin on the 3rd floor, they are no handout
#13's in it.

thanks,
Milap

.

Path: shelby.stanford.edu!elaine36.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Problem Set 4
Date: Fri, 14 Mar 2003 18:08:31 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine36.stanford.edu
X-Trace: news.Stanford.EDU 1047665311 22062 171.64.15.111 (14 Mar 2003 18:08:31 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4896


>>Also, on question 15d, it states that C should be the root, but other than
>>that, do always take the lowest lettered router seen so far by a given
>>router as what it considers the root?

>You don't need to run through the algorithm itself, you can just find this
>by inspection if you'd like.  I don't think there are any ties, as I recall.

It was pointed out to me that I looked at this too quickly, and there is a
tie after all!  So yes, you should use the router ID as a tie breaker
(with the obvious exception of C, of course), as the normal spanning tree
protocol would do.
.

Path: shelby.stanford.edu!cardinal2.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: PS4 13(b)
Date: Fri, 14 Mar 2003 12:30:01 -0800
Lines: 8
Distribution: su
Message-ID: 
NNTP-Posting-Host: cardinal2.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047673803 28648 171.64.15.250 (14 Mar 2003 20:30:03 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4897


hi,

 In 13(b) Does M include the CRC bits ?

Thanks,
Sandhya

.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: PS4 13(b)
Date: Fri, 14 Mar 2003 13:53:42 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1047678915 1584 128.12.186.92 (14 Mar 2003 21:55:15 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4898

M is just the message.

--Russ


"Sandhya Kunnatur"  wrote in message

>
> hi,
>
>  In 13(b) Does M include the CRC bits ?
>
> Thanks,
> Sandhya
>


.

Path: shelby.stanford.edu!not-for-mail
From: Keaka Jackson 
Newsgroups: su.class.cs244a
Subject: Re: Handout 13.
Date: Fri, 14 Mar 2003 14:46:40 -0800
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: keaka.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1047682001 3128 128.12.173.190 (14 Mar 2003 22:46:41 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4899

I second this motion!

keaka

Milap Chandrakant Shah wrote:
> Hi,
> 
> can you post the pdf of handout 13. On the website only the ppt is
> posted. I went to the handout bin on the 3rd floor, they are no handout
> #13's in it.
> 
> thanks,
> Milap
> 

.

Path: shelby.stanford.edu!elaine5.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Handout 13.
Date: Fri, 14 Mar 2003 23:03:35 +0000 (UTC)
Lines: 1
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine5.stanford.edu
X-Trace: news.Stanford.EDU 1047683015 4159 171.64.15.70 (14 Mar 2003 23:03:35 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4900

done.
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: pls post old finals.
Date: Sat, 15 Mar 2003 15:22:45 +0000 (UTC)
Organization: Stanford University
Lines: 2
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1047741765 5725 171.64.15.80 (15 Mar 2003 15:22:45 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4901


..
.

Path: shelby.stanford.edu!seetapun
From:  (David Seetapun)
Newsgroups: su.class.cs244a
Subject: pls post review sessions slides
Date: Sat, 15 Mar 2003 15:59:57 +0000 (UTC)
Organization: Stanford University
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine15.stanford.edu
X-Trace: news.Stanford.EDU 1047743997 6392 171.64.15.80 (15 Mar 2003 15:59:57 GMT)
X-Complaints-To: 
X-newsreader: xrn 9.02
Xref: shelby.stanford.edu su.class.cs244a:4902



as pdf if possible.
..
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: pls post review sessions slides
Date: Sun, 16 Mar 2003 04:46:39 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 12
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine17.stanford.edu
X-Trace: news.Stanford.EDU 1047789999 27868 171.64.15.82 (16 Mar 2003 04:46:39 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4903

I'm looking into this now.  

SteveJ

In article 
David Seetapun  wrote:
>
>
>as pdf if possible.
>.


.

Path: shelby.stanford.edu!not-for-mail
From: "Pavan" 
Newsgroups: su.class.cs244a
Subject: Re: pls post old finals.
Date: Sun, 16 Mar 2003 15:14:30 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: whizkid.stanford.edu
X-Trace: news.Stanford.EDU 1047856406 1277 128.12.184.109 (16 Mar 2003 23:13:26 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4920.2300
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4920.2300
Xref: shelby.stanford.edu su.class.cs244a:4904

Hi,
    I support this mail. Please post some old finals at your earliest.That
wud be greatly helpful for practising.

Thanx,
Pavan.

"David Seetapun"  wrote in message

>
> .


.

Path: shelby.stanford.edu!elaine16.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: problem set #4 pick-up and solution posting
Date: Sun, 16 Mar 2003 21:16:01 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine16.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047878169 12876 171.64.15.81 (17 Mar 2003 05:16:09 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4905

hi! not to be pushy here .. when do we expect to be able to pick up our
graded PS 4? and when will the solution be posted?

thanks!

Tan

.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: TA office hour during exam week
Date: Mon, 17 Mar 2003 00:31:09 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047889872 19188 171.64.15.82 (17 Mar 2003 08:31:12 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4906

will all TAs still hold their regular office hours (relocated to Gates
building) or there are new/limited hours for the exam week?

thanks!
Tan

.

Path: shelby.stanford.edu!DB.Stanford.EDU!daswani
From: Neil Daswani 
Newsgroups: su.class.cs244a
Subject: 4b/5b encoding efficiency?
Date: Mon, 17 Mar 2003 02:31:43 -0800
Lines: 18
Distribution: su
Message-ID: 
NNTP-Posting-Host: db.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047897109 23573 171.64.75.201 (17 Mar 2003 10:31:49 GMT)
X-Complaints-To: 
X-Sender: 
Xref: shelby.stanford.edu su.class.cs244a:4907


Peterson & Davie page 83 states 4b/5b encoding gives 80% efficiency.  
This makes sesne since every 5 bits contain 4 bits worth of data.

However, slide 16 on handout 13 states that 4b/5b encoding has 25%
overhead.  Is this just a typo?  
(I assume that overhead = 1 - efficiency ?)

In general, if y bits are used to encode x bits, is the efficiency of the
coding scheme x/y ?  Or, are there other aspects of an encoding scheme
(such as its clock recovery characteristics) that make it more or less
efficient?

-- Neil




.

Path: shelby.stanford.edu!elaine13.Stanford.EDU!sidj
From: Siddharth Joshi 
Newsgroups: su.class.cs244a
Subject: Re: 4b/5b encoding efficiency?
Date: Mon, 17 Mar 2003 10:35:11 -0800
Lines: 33
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine13.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047926115 11431 171.64.15.78 (17 Mar 2003 18:35:15 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4908

For 4 bit of information --- 1 extra bit.

So overhead = 1/4 *100 = 25 %

SIDJ


On Mon, 17 Mar 2003, Neil Daswani wrote:

>
> Peterson & Davie page 83 states 4b/5b encoding gives 80% efficiency.
> This makes sesne since every 5 bits contain 4 bits worth of data.
>
> However, slide 16 on handout 13 states that 4b/5b encoding has 25%
> overhead.  Is this just a typo?
> (I assume that overhead = 1 - efficiency ?)
>
> In general, if y bits are used to encode x bits, is the efficiency of the
> coding scheme x/y ?  Or, are there other aspects of an encoding scheme
> (such as its clock recovery characteristics) that make it more or less
> efficient?
>
> -- Neil
>
>
>
>
>

Siddharth Joshi
EE, Stanford


.

Path: shelby.stanford.edu!elaine10.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: problem set #4 pick-up and solution posting
Date: Mon, 17 Mar 2003 19:52:33 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine10.stanford.edu
X-Trace: news.Stanford.EDU 1047930753 14592 171.64.15.75 (17 Mar 2003 19:52:33 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4909


>hi! not to be pushy here .. when do we expect to be able to pick up our
>graded PS 4? and when will the solution be posted?

I've just posted the solution; the problem sets are graded, so I'd imagine
(although this is a guess on my part) that they'll be in the cabinet after
Mina's entered the grades.  I'll ask her if this is the case.

.

Path: shelby.stanford.edu!elaine10.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: TA office hour during exam week
Date: Mon, 17 Mar 2003 19:59:53 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine10.stanford.edu
X-Trace: news.Stanford.EDU 1047931193 14813 171.64.15.75 (17 Mar 2003 19:59:53 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4910

>will all TAs still hold their regular office hours (relocated to Gates
>building) or there are new/limited hours for the exam week?

No, but if you have questions that can't be answered on the newsgroup I'll be
on campus Wednesday afternoon; if there's interest, I could arrange to meet
people at, say, 2.30 somewhere in Gates.
.

Path: shelby.stanford.edu!elaine10.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: pls post old finals.
Date: Mon, 17 Mar 2003 20:03:31 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine10.stanford.edu
X-Trace: news.Stanford.EDU 1047931411 14991 171.64.15.75 (17 Mar 2003 20:03:31 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4911

We should be posting one later today.  In the meantime, several of the
quarter's homework questions were taken from old exams (and PS4 was basically
a previous final, verbatim), so any problem areas for you on those would be
a good place to go and rework.
.

Path: shelby.stanford.edu!elaine21.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: 4b/5b encoding efficiency?
Date: Mon, 17 Mar 2003 21:32:24 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 34
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine21.stanford.edu
X-Trace: news.Stanford.EDU 1047936744 18754 171.64.15.86 (17 Mar 2003 21:32:24 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4912

In article 
Neil Daswani   wrote:
>
>Peterson & Davie page 83 states 4b/5b encoding gives 80% efficiency.  
>This makes sesne since every 5 bits contain 4 bits worth of data.

Right.

>
>However, slide 16 on handout 13 states that 4b/5b encoding has 25%
>overhead.  Is this just a typo?  
>(I assume that overhead = 1 - efficiency ?)

25% overhead is also right.  5 is 125% of 4, hence 25% overhead.

>
>In general, if y bits are used to encode x bits, is the efficiency of the
>coding scheme x/y ?

Yes.

SteveJ

  Or, are there other aspects of an encoding scheme
>(such as its clock recovery characteristics) that make it more or less
>efficient?
>
>-- Neil
>
>
>
>


.

Path: shelby.stanford.edu!elaine21.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: TA office hour during exam week
Date: Mon, 17 Mar 2003 21:37:17 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 16
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine21.stanford.edu
X-Trace: news.Stanford.EDU 1047937037 18976 171.64.15.86 (17 Mar 2003 21:37:17 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4913

I will be around campus at least part of the week before the
244a final.  I could arrange a time as well, if the newsgroup
isn't sufficient.

SteveJ

In article 
Matthew Jonathan Holliman  wrote:
>>will all TAs still hold their regular office hours (relocated to Gates
>>building) or there are new/limited hours for the exam week?
>
>No, but if you have questions that can't be answered on the newsgroup I'll be
>on campus Wednesday afternoon; if there's interest, I could arrange to meet
>people at, say, 2.30 somewhere in Gates.


.

Path: shelby.stanford.edu!elaine30.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: problem set #4 pick-up and solution posting
Date: Mon, 17 Mar 2003 22:55:15 +0000 (UTC)
Lines: 4
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine30.stanford.edu
X-Trace: news.Stanford.EDU 1047941715 22074 171.64.15.105 (17 Mar 2003 22:55:15 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4914

The graded homeworks are in the cabinet.

Some people forgot to put their name on their paper; if you don't find your
homework in the cabinet, it should be in Mina's office.
.

Path: shelby.stanford.edu!elaine37.Stanford.EDU!kunnatur
From: Sandhya Kunnatur 
Newsgroups: su.class.cs244a
Subject: midterm win2002 prob 3(a)
Date: Mon, 17 Mar 2003 16:33:24 -0800
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine37.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047947606 26003 171.64.15.112 (18 Mar 2003 00:33:26 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4915

hi,
in Window 3, the only packet that gets lost is 4. So will not the receiver
side buffer packets 5,6 & 7?
if so, in window 5, when the receiver gets packets 4&5, the ACK will be
sent for 7. so there is no need to retransmit 6&7.

What is the right approach?

Thanks,
Sandhya


.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: TA office hour during exam week
Date: Mon, 17 Mar 2003 17:23:20 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1047950600 28127 171.64.74.37 (18 Mar 2003 01:23:20 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030313
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4916

I hold my office hours at the regular time today but the location (as 
posted) has changed to Gates 342.

   Guido

Tan Gao (weiwei) wrote:
> will all TAs still hold their regular office hours (relocated to Gates
> building) or there are new/limited hours for the exam week?
> 
> thanks!
> Tan
> 

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: pls post old finals.
Date: Mon, 17 Mar 2003 17:36:20 -0800
Lines: 8
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1047951380 28796 171.64.74.37 (18 Mar 2003 01:36:20 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030313
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4917

Done.

Matthew Jonathan Holliman wrote:
> We should be posting one later today.  In the meantime, several of the
> quarter's homework questions were taken from old exams (and PS4 was basically
> a previous final, verbatim), so any problem areas for you on those would be
> a good place to go and rework.

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Sample Final Posted...
Date: Mon, 17 Mar 2003 17:36:59 -0800
Lines: 4
Distribution: su
Message-ID: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1047951419 28796 171.64.74.37 (18 Mar 2003 01:36:59 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030313
X-Accept-Language: en-us, en
Xref: shelby.stanford.edu su.class.cs244a:4918

It's the Winter 2002 Final and it can be found on the course schedule page.

   Guido

.

Path: shelby.stanford.edu!not-for-mail
From: Guido Appenzeller 
Newsgroups: su.class.cs244a
Subject: Re: midterm win2002 prob 3(a)
Date: Mon, 17 Mar 2003 17:55:52 -0800
Lines: 23
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: caliban.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.Stanford.EDU 1047952553 29592 171.64.74.37 (18 Mar 2003 01:55:53 GMT)
X-Complaints-To: 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030313
X-Accept-Language: en-us, en
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4919

Sandhya,

> in Window 3, the only packet that gets lost is 4. So will not the receiver
> side buffer packets 5,6 & 7?

This depends on the implementation, in TCP the answer is typically yes.

> if so, in window 5, when the receiver gets packets 4&5, the ACK will be
> sent for 7. so there is no need to retransmit 6&7.

This depends again. If the transmitter implements a simple go-back-n it 
will re-send all packets starting from 4 including 6&7. It will simply
ignore the acks for 6&7 as they are not currently outstanding.

You could imagine an implementation where the sender remembers that 6&7 
were sent even though 4 is lost but that wasn't how go-back-n was 
explained in class.

I am not entirely sure but I believe we did not give full credit for a 
soultion where 6&7 were not re-transmitted.

   Guido

.

Path: shelby.stanford.edu!elaine12.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: midterm win2002 prob 3(a)
Date: Tue, 18 Mar 2003 04:01:02 +0000 (UTC)
Lines: 6
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: elaine12.stanford.edu
X-Trace: news.Stanford.EDU 1047960062 4575 171.64.15.77 (18 Mar 2003 04:01:02 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4920


>I am not entirely sure but I believe we did not give full credit for a 
>soultion where 6&7 were not re-transmitted.

I'll trump you:  I'm sure we didn't give full credit for this answer!

.

Path: shelby.stanford.edu!elaine23.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: review questions
Date: Mon, 17 Mar 2003 21:15:08 -0800
Lines: 43
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine23.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1047964510 7400 171.64.15.98 (18 Mar 2003 05:15:10 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4921

1. does Dijkstra's algorithm have the same stabilizing time as
Bellman-Ford? for instance, in a given network, the longest path is from
node A to node Z, with a hope count of 10. in case of Belman-Ford, the
stabilizing time is 10 iterations. this should be the same for Dijkstra's
running on either node A or Z, correct?

2. what do we need to know about FDDI? although it's not explained in
lecture, there are a dozen or so slides on it. are we responsible for
those slides for the final?

3. for PS #4, 15(b), when the link F-D goes down, F learns route
advertisements from G and E, which are (F, 10) and (F,11), respectively.
in the actual implementation, does F know that G's advertisement actually
has F itself as the next-hop, which will create a temporary loop? or this
small loop is OK because it will be corrected quickly and the system
eventually stablizes?

4. for PS #3, 4(c), the question asks "how many times MORE efficient is
the RAT token ring than token bus network?" my interpretation of "more
efficient" is "(n_RAT - n_TB) - 100%". for future questions, when asked
"MORE efficient", do we stick with "n_RAT/n_TB" and forget about
minus the 100%?


for midterm 2003:

i.) question 6(c), would someone plz point out where the
W/2 term come from? in one sawtooth period, which begins w/ W/2 and end
with W/2, it seems logical that only 1 window of data was transmitted. not
sure what i missed here ...

ii.) question 5(d), if we work out the shortest paths TO node F from all
other nodes, there are two paths from G to F with equal cost (10):
* path 1: G->F
* path 2: G->B->C->D->F
for future reference, under this circumstance, is there any form of
arbitrating mechanism by which one path is chosen over another to be used
in RPB/RPM?

thanks!
Tan


.

Path: shelby.stanford.edu!elaine39.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: review questions
Date: Tue, 18 Mar 2003 06:27:25 +0000 (UTC)
Lines: 69
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine39.stanford.edu
X-Trace: news.Stanford.EDU 1047968845 9534 171.64.15.114 (18 Mar 2003 06:27:25 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4922


>1. does Dijkstra's algorithm have the same stabilizing time as
>Bellman-Ford? for instance, in a given network, the longest path is from
>node A to node Z, with a hope count of 10. in case of Belman-Ford, the
>stabilizing time is 10 iterations. this should be the same for Dijkstra's
>running on either node A or Z, correct?

What does stabilising time mean for a link state algorithm?  Do you mean
the time for all LSAs to be flooded to all routers, in the case of OSPF,
for example?  This is in time proportional (assuming for simplicity no
link state announcement packet losses) to the maximum number of hops between
any two nodes.

>2. what do we need to know about FDDI? although it's not explained in
>lecture, there are a dozen or so slides on it. are we responsible for
>those slides for the final?

You should understand these slides just based on your understanding of the
Token Ring material, as the basic concepts are all the same.  (If you don't,
I'd suggest you look again at the Token Ring stuff).

>3. for PS #4, 15(b), when the link F-D goes down, F learns route
>advertisements from G and E, which are (F, 10) and (F,11), respectively.
>in the actual implementation, does F know that G's advertisement actually
>has F itself as the next-hop, which will create a temporary loop? or this
>small loop is OK because it will be corrected quickly and the system
>eventually stablizes?

I don't know enough about the details of RIP or other distance-vector based
protocols to reliably answer this.  Including this information would probably
be of marginal value in solving the loop problem you mention, because it
doesn't address three-node loops.

>4. for PS #3, 4(c), the question asks "how many times MORE efficient is
>the RAT token ring than token bus network?" my interpretation of "more
>efficient" is "(n_RAT - n_TB) - 100%". for future questions, when asked
>"MORE efficient", do we stick with "n_RAT/n_TB" and forget about
>minus the 100%?

"How many times more..." seems to imply a multiplicative factor to me.
"How much more efficient..." is more ambiguous, and could be answered
with a multiplicator factor, a percent increase, etc.  In either case,
I don't really understand your answer above--did you forget a denominator
in the first term in order to make this a percent increase?

>for midterm 2003:

>i.) question 6(c), would someone plz point out where the
>W/2 term come from? in one sawtooth period, which begins w/ W/2 and end
>with W/2, it seems logical that only 1 window of data was transmitted. not
>sure what i missed here ...

I answered a question about 6(c) on the newsgroup previously; please
search for the post titled "Q6c on midterm" and see if that answers your
question.  If not, please post again.

>ii.) question 5(d), if we work out the shortest paths TO node F from all
>other nodes, there are two paths from G to F with equal cost (10):
>* path 1: G->F
>* path 2: G->B->C->D->F
>for future reference, under this circumstance, is there any form of
>arbitrating mechanism by which one path is chosen over another to be used
>in RPB/RPM?

I'm not aware of a general tiebreaker for RPM, and this would seem to be
protocol specific (i.e. RPM is a general approach rather than a particular
multicast routing protocol, which might have to address tie-breaking issues).
Unless one is clearly specified, it seems reasonable to just make an arbitrary
choice.
.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: more review questions
Date: Tue, 18 Mar 2003 10:51:58 -0800
Lines: 57
Distribution: su
Message-ID: 
References: 
 
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1048013520 3384 171.64.15.82 (18 Mar 2003 18:52:00 GMT)
X-Complaints-To: 
To: Matthew Jonathan Holliman 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4923

hi! sorry about some ambiguities in the original posting. I've corrected
them and added more Qs :-)

> >1. does Dijkstra's algorithm have the same stabilizing time as
> >Bellman-Ford? for instance, in a given network, the longest path is from
> >node A to node Z, with a hope count of 10. in case of Belman-Ford, the
> >stabilizing time is 10 iterations. this should be the same for Dijkstra's
> >running on either node A or Z, correct?
>
> What does stabilising time mean for a link state algorithm?  Do you mean
> the time for all LSAs to be flooded to all routers, in the case of OSPF,
> for example?  This is in time proportional (assuming for simplicity no
> link state announcement packet losses) to the maximum number of hops between
> any two nodes.

yes, by "stablizing time", i mean the time for all routers in the network
to reach a consistent view of the network and thus, "stablize".

> >4. for PS #3, 4(c), the question asks "how many times MORE efficient is
> >the RAT token ring than token bus network?" my interpretation of "more
> >efficient" is "(n_RAT - n_TB) - 100%". for future questions, when asked
> >"MORE efficient", do we stick with "n_RAT/n_TB" and forget about
> >minus the 100%?
>
> "How many times more..." seems to imply a multiplicative factor to me.
> "How much more efficient..." is more ambiguous, and could be answered
> with a multiplicator factor, a percent increase, etc.  In either case,
> I don't really understand your answer above--did you forget a denominator
> in the first term in order to make this a percent increase?

sorry, the first term should be "(n_RAT-n_TB)/n_TB - 100%"

more questions from lecture slides:

1. one of Guido's review (1/17/03) slides states that fragmentations of
packets may be possible at hosts AS WELL AS routers. i was wondering under
what conditions will a host fragment a packet? the statement did not
specify if the "host" is the end-host or middle-man.

2. HO #10, slide 29: in the diagram, even though host 2 does not have any
data to transmit, it still spent TRANST transmitting the token. is this
because "all nodes copy all data and tokens, and repeat them along the
ring" (slide 27)? if yes, the diagram did not show the time host 2 took to
copy the data sent by host 1. or, only a token is copied by all hosts on a
ring regardless of whether it has data to send?

also in slide 27, PROP is defined as the "minimum rotation time around
ring". does this definition assume an empty ring, in which no host
copies/transmits the token (therefore, PROP does not contain any TRANST
component)?

regarding a possible TA office hour tomorrow, will 2:30pm in Gates 2nd
floor hall area (near file cabinets) be ok?

thanks!
Tan

.

Path: shelby.stanford.edu!elaine17.Stanford.EDU!wwtgao
From: "Tan Gao (weiwei)" 
Newsgroups: su.class.cs244a
Subject: final revision
Date: Tue, 18 Mar 2003 10:58:07 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
  
NNTP-Posting-Host: elaine17.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1048013889 3752 171.64.15.82 (18 Mar 2003 18:58:09 GMT)
X-Complaints-To: 
In-Reply-To: 
Xref: shelby.stanford.edu su.class.cs244a:4924

> > >4. for PS #3, 4(c), the question asks "how many times MORE efficient is
> > >the RAT token ring than token bus network?" my interpretation of "more
> > >efficient" is "(n_RAT - n_TB) - 100%". for future questions, when asked
> > >"MORE efficient", do we stick with "n_RAT/n_TB" and forget about
> > >minus the 100%?
> >
> > "How many times more..." seems to imply a multiplicative factor to me.
> > "How much more efficient..." is more ambiguous, and could be answered
> > with a multiplicator factor, a percent increase, etc.  In either case,
> > I don't really understand your answer above--did you forget a denominator
> > in the first term in order to make this a percent increase?

sorry, the first term should be "n_RAT/n_TB - 100%", NOT
"(n_RAT-n_TB)/n_TB - 100%"

Tan

.

Path: shelby.stanford.edu!elaine20.Stanford.EDU!rhm
From: Rafael M Hernandez 
Newsgroups: su.class.cs244a
Subject: HW4: Q7 and Q15(d)(i)
Date: Tue, 18 Mar 2003 20:28:35 -0800
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine20.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1048048117 25613 171.64.15.85 (19 Mar 2003 04:28:37 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4925

Hi,
Q7:
According to Slide 6 in handout 8 RED will drop packets with probability 1
when the router's average queue length is greater than the maximum
threshold. Shouldn't be the correct answer for Q7 both a) and c)?

Q15-(d)-(i):
Why is the cost from A to H equal to 18? If C is the root of the spanning
tree, shouldn't that cost be 2 (A->B) + 16 (B->C) + 6 (C->H) = 24?

Thanks
Rafa


.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: more review questions
Date: Wed, 19 Mar 2003 04:33:47 +0000 (UTC)
Lines: 45
Distribution: su
Message-ID: 
References:    
NNTP-Posting-Host: elaine35.stanford.edu
X-Trace: news.Stanford.EDU 1048048427 26278 171.64.15.110 (19 Mar 2003 04:33:47 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4926


>1. one of Guido's review (1/17/03) slides states that fragmentations of
>packets may be possible at hosts AS WELL AS routers. i was wondering under
>what conditions will a host fragment a packet? the statement did not
>specify if the "host" is the end-host or middle-man.

It seems a bit strange since the host knows the MTU of its directly connected
network.  About the only use I can think of this would be for denial-of-service
attacks, since the packet reassembly path of most TCP/IP stacks would probably
not be a fastpath and would thus make a good target.  Perhaps there's a more
benign explanation also, but it's not occurring to me now.

>2. HO #10, slide 29: in the diagram, even though host 2 does not have any
>data to transmit, it still spent TRANST transmitting the token. is this
>because "all nodes copy all data and tokens, and repeat them along the
>ring" (slide 27)? if yes, the diagram did not show the time host 2 took to
>copy the data sent by host 1. or, only a token is copied by all hosts on a
>ring regardless of whether it has data to send?

Since this is RAR, the data already passed around the ring once (in the
bit of the figure corresponding to PROP propagation time around the ring).
When the data arrived back at host 1, it passes the token on (labeled
as "Token departs from host 1" in that diagram); this takes time TRANST,
plus the propagation time to the next host (l_1/c).

I don't know offhand how a Token Ring would normally be implemented in terms
of the physical layer, so can't comment usefully on how exactly the data/token
is propagated around the ring.  But the intent of that diagram (and of
any homework/exam problems) is that the data takes PROP time around the ring
to actually propagate.

>also in slide 27, PROP is defined as the "minimum rotation time around
>ring". does this definition assume an empty ring, in which no host
>copies/transmits the token (therefore, PROP does not contain any TRANST
>component)?

PROP is the propagation delay; it includes no notion of time to actually
put bits out on to the wire (TRANST/TRANSP), i.e. even if data is copied
to accomplish this, this should really be opaque to you.

>regarding a possible TA office hour tomorrow, will 2:30pm in Gates 2nd
>floor hall area (near file cabinets) be ok?

sure, that'll be fine.

.

Path: shelby.stanford.edu!elaine35.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: HW4: Q7 and Q15(d)(i)
Date: Wed, 19 Mar 2003 04:40:54 +0000 (UTC)
Lines: 15
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine35.stanford.edu
X-Trace: news.Stanford.EDU 1048048854 26720 171.64.15.110 (19 Mar 2003 04:40:54 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4927


>According to Slide 6 in handout 8 RED will drop packets with probability 1
>when the router's average queue length is greater than the maximum
>threshold. Shouldn't be the correct answer for Q7 both a) and c)?

Nope, please re-read question (c) carefully--there's no "average" in there...

>Q15-(d)-(i):
>Why is the cost from A to H equal to 18? If C is the root of the spanning
>tree, shouldn't that cost be 2 (A->B) + 16 (B->C) + 6 (C->H) = 24?

The B-C link isn't in the lowest cost spanning tree rooted at C.  I haven't
worked out what the full tree is, but I'd hazard a guess that the route
from A to H goes A-B-D-F-E-C-H.

.

Path: shelby.stanford.edu!elaine6.Stanford.EDU!primdahl
From:  (Keith A Primdahl)
Newsgroups: su.class.cs244a
Subject: sample final, question 14
Date: Wed, 19 Mar 2003 05:30:42 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 14
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine6.stanford.edu
X-Trace: news.Stanford.EDU 1048051842 28502 171.64.15.71 (19 Mar 2003 05:30:42 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4928

Can someone post a few of the soultion steps for problem 14 on the sample
final which was posted today?

Letting f = probability of success:

for a single bit, 1 attempt, f = 1 - B
for a packet, 1 attempt, f = 1 - B^(P+C)

Now what?  Seems like inverting might help as the above is fractional
success for 1 attempt; so the inverse would be variable atempts per 1
success...doesn't seem to get me anywhere close to answer b.

Thanks...Keith

.

Path: shelby.stanford.edu!not-for-mail
From: "Will Robinson" 
Newsgroups: su.class.cs244a
Subject: practice midterm #2 and #3
Date: Tue, 18 Mar 2003 23:34:45 -0800
Lines: 26
Distribution: su
Message-ID: 
NNTP-Posting-Host: javalasers.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: news.Stanford.EDU 1048059284 2050 128.12.91.22 (19 Mar 2003 07:34:44 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.3 (That cat's something I can't explain)
Xref: shelby.stanford.edu su.class.cs244a:4929

Hi everyone,

We have a couple of questions on the sample midterm.  For #2, we note that
neither (x+1), (x^2+1), nor (x^3+1) evenly divides G.  Therefore, by rule
(ii) on slide 14 of handout 14, we expect to be able to detect all two-bit
errors.  By the formulas on slide 8 of the same handout, this implies that
the hamming distance is greater than 2 (we also checked this hamming
distance by hand).  But according to that slide, if the hamming distance
is greater than 2, then we should also be able to correct all 1-bit
errors.  However, (c) is not marked as true in the solutions.  Where'd we
go wrong?

In #3, we used the formula from handout 13, slide #21 and #22 to determine
the maximum packet size.  We performed the calculation many times, and
kept ending up with 5,000,000 bits (or 625,000 bytes) as the maximum
packet size.  However, the solution says that 12,500 bytes is the answer. 

Here's a sample of our work for this problem:

Pmax <= (200 * R)/(2*(Rmax - Rmin))
Pmax <= (200 * 100*10^6)/(2*(.002*10^6))
Pmax <= 5,000,000

Thanks for your help,
Will Robinson
Steven Bergsieker
.

Path: shelby.stanford.edu!saga7.Stanford.EDU!milaps
From: Milap Chandrakant Shah 
Newsgroups: su.class.cs244a
Subject: slides for last review session.
Date: Wed, 19 Mar 2003 08:59:15 -0800
Lines: 6
Distribution: su
Message-ID: 
NNTP-Posting-Host: saga7.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1048093160 17179 171.64.15.137 (19 Mar 2003 16:59:20 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4930

Hi,

Can you please post the slides of the last review session taken by guido.

-Milap

.

Path: shelby.stanford.edu!elaine25.Stanford.EDU!sansari
From: Saad Salman Ansari 
Newsgroups: su.class.cs244a
Subject: Q3 on posted final
Date: Wed, 19 Mar 2003 10:41:40 -0800
Lines: 19
Distribution: su
Message-ID: 
NNTP-Posting-Host: elaine25.stanford.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: news.Stanford.EDU 1048099302 20525 171.64.15.100 (19 Mar 2003 18:41:42 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4931

Hi,

Regarding calculating the maximum packet size Pmax, I used the formula
derived in class

Pmax * (Rmax - Rmin)/R <= B/2

with Rmax = 100.001 MHz
     Rmin = 99.999 MHz
     R    = 100 MHz
     B = 200

I get an answer of Pmax <= 5000000 bits (= 625000 bytes)!!!!
Whereas the posted answer suggests Pmax <= 12500 bytes

Can somebody point out the error in the calculation?

-Saad

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: CRC error detection
Date: Wed, 19 Mar 2003 14:32:10 -0800
Lines: 29
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1048113131 28922 128.12.85.0 (19 Mar 2003 22:32:11 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4932

I've noticed that the lecture notes and the book differ when it comes to
specifying the properties that must hold of a generator polynomial so that
it detects certain errors. I was hoping that the TA's could clarify this.

Two-bit errors:
Book: G(x) has a factor with at least three terms
Lecture: (x^k + 1) does not divide G(x) for any k

Odd number of errors:
Book and Lecture agree on this: G(x) has the factor (x + 1)

One thing in particular concerns me: if the lecture is correct for two-bit
errors, then it is not possible to create a G(x) which detects both two-bit
errors and odd errors, because the necessary condition for the odd errors is
a subset of the conditions which cause two-bit errors to not be detected
(e.g. x + 1 = x^k + 1 for k = 1).

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Sample Final #11
Date: Wed, 19 Mar 2003 15:16:10 -0800
Lines: 17
Distribution: su
Message-ID: 
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1048115771 538 128.12.85.0 (19 Mar 2003 23:16:11 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4933

Understandably, none of the answers to question #11 are correct. However,
the directions for the multiple choice questions explicity state that there
is at least one correct assertion per question. Can we assume that this will
be true on the final?

--
____________________________________________
Rene Patnode
Stanford University

Computer Science
Phi Kappa Psi
Resident Assistant, Cardenal

"Mmm... unexplained bacon." - Homer Simpson


.

Path: shelby.stanford.edu!elaine11.Stanford.EDU!sjac3
From:  (Steve Jacobson)
Newsgroups: su.class.cs244a
Subject: Re: CRC error detection
Date: Thu, 20 Mar 2003 00:34:54 +0000 (UTC)
Organization: Stanford University, CA 94305, USA
Lines: 35
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine11.stanford.edu
X-Trace: news.Stanford.EDU 1048120494 3463 171.64.15.76 (20 Mar 2003 00:34:54 GMT)
X-Complaints-To: 
Xref: shelby.stanford.edu su.class.cs244a:4934

In article 
Rene Patnode  wrote:
>I've noticed that the lecture notes and the book differ when it comes to
>specifying the properties that must hold of a generator polynomial so that
>it detects certain errors. I was hoping that the TA's could clarify this.
>
>Two-bit errors:
>Book: G(x) has a factor with at least three terms
>Lecture: (x^k + 1) does not divide G(x) for any k

I believe both are correct.

>
>Odd number of errors:
>Book and Lecture agree on this: G(x) has the factor (x + 1)
>
>One thing in particular concerns me: if the lecture is correct for two-bit
>errors, then it is not possible to create a G(x) which detects both two-bit
>errors and odd errors, because the necessary condition for the odd errors is
>a subset of the conditions which cause two-bit errors to not be detected
>(e.g. x + 1 = x^k + 1 for k = 1).

It is possible to have a generator that catches all two-bit errors
and all cases where an odd number of bits are in error.

If G(x) has at least three terms, and if x + 1 is a factor of G(x),
then both conditions hold.

A corner case:  If G(x) has at least three terms, all double bit errors
(except two adjacent errored bits) are caught.  The adjacent error
case would be caught if G(x) is of the form "  ... + 1" (as a burst
error), as long as k >= 2.

SteveJ

.

Path: shelby.stanford.edu!not-for-mail
From: "Rene Patnode" 
Newsgroups: su.class.cs244a
Subject: Re: CRC error detection
Date: Wed, 19 Mar 2003 16:47:15 -0800
Lines: 53
Distribution: su
Message-ID: 
References:  
NNTP-Posting-Host: el-diablo.stanford.edu
X-Trace: news.Stanford.EDU 1048121236 3906 128.12.85.0 (20 Mar 2003 00:47:16 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4935

Right... I understand that if the book is correct that both necessary
conditions can hold simulataneously (i.e. if G(x) has a factor with at least
three terms and has the factor (x + 1)).

However, I still maintain that if the lecture is correct then the conditions
contradict, because x + 1 dividing G(x) means x^k + 1 divides G(x) for k =
1.

Or am I interpreting the conditions incorrectly?

"Steve Jacobson"  wrote in message

> In article 
> Rene Patnode  wrote:
> >I've noticed that the lecture notes and the book differ when it comes to
> >specifying the properties that must hold of a generator polynomial so
that
> >it detects certain errors. I was hoping that the TA's could clarify this.
> >
> >Two-bit errors:
> >Book: G(x) has a factor with at least three terms
> >Lecture: (x^k + 1) does not divide G(x) for any k
>
> I believe both are correct.
>
> >
> >Odd number of errors:
> >Book and Lecture agree on this: G(x) has the factor (x + 1)
> >
> >One thing in particular concerns me: if the lecture is correct for
two-bit
> >errors, then it is not possible to create a G(x) which detects both
two-bit
> >errors and odd errors, because the necessary condition for the odd errors
is
> >a subset of the conditions which cause two-bit errors to not be detected
> >(e.g. x + 1 = x^k + 1 for k = 1).
>
> It is possible to have a generator that catches all two-bit errors
> and all cases where an odd number of bits are in error.
>
> If G(x) has at least three terms, and if x + 1 is a factor of G(x),
> then both conditions hold.
>
> A corner case:  If G(x) has at least three terms, all double bit errors
> (except two adjacent errored bits) are caught.  The adjacent error
> case would be caught if G(x) is of the form "  ... + 1" (as a burst
> error), as long as k >= 2.
>
> SteveJ
>


.

Path: shelby.stanford.edu!elaine10.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Sample Final #11
Date: Thu, 20 Mar 2003 01:23:16 +0000 (UTC)
Lines: 8
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine10.stanford.edu
X-Trace: news.Stanford.EDU 1048123396 5300 171.64.15.75 (20 Mar 2003 01:23:16 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4936


>Understandably, none of the answers to question #11 are correct. However,
>the directions for the multiple choice questions explicity state that there
>is at least one correct assertion per question. Can we assume that this will
>be true on the final?

Yes.

.

Path: shelby.stanford.edu!elaine10.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: sample final, question 14
Date: Thu, 20 Mar 2003 01:35:40 +0000 (UTC)
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine10.stanford.edu
X-Trace: news.Stanford.EDU 1048124140 5811 171.64.15.75 (20 Mar 2003 01:35:40 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4937


>Can someone post a few of the soultion steps for problem 14 on the sample
>final which was posted today?

>Letting f = probability of success:

>for a single bit, 1 attempt, f = 1 - B
>for a packet, 1 attempt, f = 1 - B^(P+C)

Calling the probability of success for the whole packet "p":

p = (1-B)^(P+C)
  = 1 - (P+C)B + (P+C)(P+C-1)/2*B^2 + ...
  = 1 - (P+C)B (approximately, given that B is small)

Each transmission is a coin flip, with probability of success p, so
the expected number of failures before success is (1-p)/p (from the
expected value of a geometric RV).  There's an additional transmission
for the successful case, giving the expected number of transmissions as 1/p,
i.e. 1 / (1 - (P+C)B).

.

Path: shelby.stanford.edu!not-for-mail
From: "Steven Bergsieker" 
Newsgroups: su.class.cs244a
Subject: Final Exam Notes
Date: Wed, 19 Mar 2003 20:41:35 -0800
Lines: 5
Distribution: su
Message-ID: 
NNTP-Posting-Host: imladris.stanford.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
X-Trace: news.Stanford.EDU 1048135294 12322 128.12.62.22 (20 Mar 2003 04:41:34 GMT)
X-Complaints-To: 
User-Agent: Pan/0.13.0 (The whole remains beautiful)
Xref: shelby.stanford.edu su.class.cs244a:4938

Just to make sure, we are allowed to have one double-sided piece of paper
with notes on it for the final, right?

Thanks,
Steven
.

Path: shelby.stanford.edu!not-for-mail
From: "Metha Jeeradit" 
Newsgroups: su.class.cs244a
Subject: Re: CRC error detection
Date: Wed, 19 Mar 2003 21:38:13 -0800
Lines: 70
Distribution: su
Message-ID: 
References:   
NNTP-Posting-Host: ithaca.stanford.edu
X-Trace: news.Stanford.EDU 1048138697 13978 128.12.181.52 (20 Mar 2003 05:38:17 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4939

I think the Prof. pointed out this apparent contradiction in the lecture and
mentioned that the two isolated errors do not include two adjacent errors
i.e., k > 1, so all two isolated errors are still detected even if (x+1) is
a factor of G(x)...

Metha

"Rene Patnode"  wrote in message

> Right... I understand that if the book is correct that both necessary
> conditions can hold simulataneously (i.e. if G(x) has a factor with at
least
> three terms and has the factor (x + 1)).
>
> However, I still maintain that if the lecture is correct then the
conditions
> contradict, because x + 1 dividing G(x) means x^k + 1 divides G(x) for k =
> 1.
>
> Or am I interpreting the conditions incorrectly?
>
> "Steve Jacobson"  wrote in message
> 
> > In article 
> > Rene Patnode  wrote:
> > >I've noticed that the lecture notes and the book differ when it comes
to
> > >specifying the properties that must hold of a generator polynomial so
> that
> > >it detects certain errors. I was hoping that the TA's could clarify
this.
> > >
> > >Two-bit errors:
> > >Book: G(x) has a factor with at least three terms
> > >Lecture: (x^k + 1) does not divide G(x) for any k
> >
> > I believe both are correct.
> >
> > >
> > >Odd number of errors:
> > >Book and Lecture agree on this: G(x) has the factor (x + 1)
> > >
> > >One thing in particular concerns me: if the lecture is correct for
> two-bit
> > >errors, then it is not possible to create a G(x) which detects both
> two-bit
> > >errors and odd errors, because the necessary condition for the odd
errors
> is
> > >a subset of the conditions which cause two-bit errors to not be
detected
> > >(e.g. x + 1 = x^k + 1 for k = 1).
> >
> > It is possible to have a generator that catches all two-bit errors
> > and all cases where an odd number of bits are in error.
> >
> > If G(x) has at least three terms, and if x + 1 is a factor of G(x),
> > then both conditions hold.
> >
> > A corner case:  If G(x) has at least three terms, all double bit errors
> > (except two adjacent errored bits) are caught.  The adjacent error
> > case would be caught if G(x) is of the form "  ... + 1" (as a burst
> > error), as long as k >= 2.
> >
> > SteveJ
> >
>
>


.

Path: shelby.stanford.edu!epic25.Stanford.EDU!ceekay
From:  (Chandrakala Kappanna)
Newsgroups: su.class.cs244a
Subject: PS#4 - Q 15 (d)
Date: Thu, 20 Mar 2003 05:43:56 +0000 (UTC)
Lines: 12
Distribution: su
Message-ID: 
NNTP-Posting-Host: epic25.stanford.edu
X-Trace: news.Stanford.EDU 1048139036 14188 171.64.15.62 (20 Mar 2003 05:43:56 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4940

Can someone tell me how the spannng tree will finally
look like for the Q. 15 (d) of the problem set 4?

how do we get the path of 18 from A to H?

I would greatly appreciate if anyone can draw the
complete tree using spanning tree protocol.

thanx,
ceekay


.

Path: shelby.stanford.edu!not-for-mail
From: "Honggo Wijaya" 
Newsgroups: su.class.cs244a
Subject: Sample Final #16
Date: Wed, 19 Mar 2003 22:02:33 -0800
Lines: 7
Distribution: su
Message-ID: 
NNTP-Posting-Host: wijaya.stanford.edu
X-Trace: news.Stanford.EDU 1048140162 14986 128.12.196.91 (20 Mar 2003 06:02:42 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2720.3000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Xref: shelby.stanford.edu su.class.cs244a:4941

Can someone explain how should we do #16 ?

Thanks,
Honggo



.

Path: shelby.stanford.edu!not-for-mail
From: "Russell Greene" 
Newsgroups: su.class.cs244a
Subject: Re: Final Exam Notes
Date: Thu, 20 Mar 2003 00:15:07 -0800
Lines: 13
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: neeta.stanford.edu
X-Trace: news.Stanford.EDU 1048148204 20548 128.12.186.92 (20 Mar 2003 08:16:44 GMT)
X-Complaints-To: 
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4942

Yes.

-Russ

"Steven Bergsieker"  wrote in message

> Just to make sure, we are allowed to have one double-sided piece of paper
> with notes on it for the final, right?
>
> Thanks,
> Steven


.

Path: shelby.stanford.edu!elaine40.Stanford.EDU!holliman
From:  (Matthew Jonathan Holliman)
Newsgroups: su.class.cs244a
Subject: Re: Q3 on posted final
Date: Thu, 20 Mar 2003 16:55:45 +0000 (UTC)
Lines: 18
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: elaine40.stanford.edu
X-Trace: news.Stanford.EDU 1048179345 4452 171.64.15.115 (20 Mar 2003 16:55:45 GMT)
X-Complaints-To: 
X-Newsreader: NN version 6.5.4 (NOV)
Xref: shelby.stanford.edu su.class.cs244a:4943


>Regarding calculating the maximum packet size Pmax, I used the formula
>derived in class

>Pmax * (Rmax - Rmin)/R <= B/2

>with Rmax = 100.001 MHz
>     Rmin = 99.999 MHz
>     R    = 100 MHz
>     B = 200

>I get an answer of Pmax <= 5000000 bits (= 625000 bytes)!!!!
>Whereas the posted answer suggests Pmax <= 12500 bytes

>Can somebody point out the error in the calculation?

You're fine; there's a mistake in the posted solutions.

.

Path: shelby.stanford.edu!usenet.stanford.edu!not-for-mail
From: "Akash Jain" 
Newsgroups: su.class.cs244a
Subject: Re: TA assignments
Date: Wed, 8 Jan 2003 07:39:54 -0800
Lines: 16
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: bmw.stanford.edu
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4944

Hey,
If we did it too early and got assigned to a TA from last year, should we
still re-do it, or is there some association between last year's TA buckets
and this year's TAs....
-aki-

"Matthew Jonathan Holliman"  wrote in message

> The TA assignment process appears to be working now; please go ahead and
click
> on the "Your TA" link on the main course page to make your assignment.
(This
> includes anyone who tried submitting earlier today or this evening).
>


.

Path: shelby.stanford.edu!usenet.stanford.edu!not-for-mail
From: "Akash Jain" 
Newsgroups: su.class.cs244a
Subject: Re: ps1 q6
Date: Tue, 14 Jan 2003 09:00:06 -0800
Lines: 19
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: bmw.stanford.edu
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4945

In a previous post they mentioned they want us to give the worst-case
scenario such that the buffer is stable, i.e. for part a) assume g is
adequate to create a stable queue, in this case, what would the formula look
like?  for part b) define what that min g must be.

"Man Yu Lui"  wrote in message

> For problem 6, do we need to include the inter-packet gap g on the output
> link? It seems to me that with R > C, if we have the same gap on the
output,
> there is no way for the buffer to not overflow eventually in the worst
case
> scenario where packets are arriving continuously separated only the gaps.
>
> -myl
>
>


.

Path: shelby.stanford.edu!usenet.stanford.edu!not-for-mail
From: "Akash Jain" 
Newsgroups: su.class.cs244a
Subject: Re: Fast Retransmit
Date: Mon, 27 Jan 2003 10:40:41 -0800
Lines: 14
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: bmw.stanford.edu
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4946

according to the handout we don't have to...
-aki-

"Fritz Budiyanto"  wrote in message

> Hi,
>
> Shall we implement Van Jacobson fast retransmission ? ie. dont have to
> wait for timeout in case of double ack ?
>
> thanks,
> Fritz


.

Path: shelby.stanford.edu!usenet.stanford.edu!not-for-mail
From: "Akash Jain" 
Newsgroups: su.class.cs244a
Subject: Re: ps2 q1
Date: Mon, 3 Feb 2003 20:59:21 -0800
Lines: 17
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: bmw.stanford.edu
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4947

I got this too, if the routers are not ICMP'ing back, then you just can't do
anything. traceroute will go all the way to 30 because it just increases the
TTL thinking something is there...
-aki-

"Man Yu Lui"  wrote in message

> For q1, when I tried to traceroute to www.hp.com, I got the result "* * *"
> from the 17th hop and onwards. What can do to discover the complete path?
>
> Thanks.
>
> -myl
>
>


.

Path: shelby.stanford.edu!usenet.stanford.edu!not-for-mail
From: "Akash Jain" 
Newsgroups: su.class.cs244a
Subject: Re: window size
Date: Tue, 4 Feb 2003 11:17:18 -0800
Lines: 21
Distribution: su
Message-ID: 
References: 
NNTP-Posting-Host: bmw.stanford.edu
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4948

my implementation assumes the later (3072-300), since window is just how
much i have outstanding, and i'm repeating seq numbers when i restrans.
-aki-
(not a ta)

"Chandrakala Kappanna"  wrote in message

>
> If I had sent packets 1, 2, 3 each of letz say 100 bytes.
> My sending wind size will be 3072 -300 bytes.
>
> Suppose letz say packet 1 times out and I have
> to resend 1,2 and 3.
>
> what will be my sender's window size?
> 3072-500  (assuming packet 1 got dropped)
> or still 3072-300
>
>


.

Path: shelby.stanford.edu!usenet.stanford.edu!not-for-mail
From: "Akash Jain" 
Newsgroups: su.class.cs244a
Subject: Test 2.M: does order of retrans matter?
Date: Fri, 7 Feb 2003 13:24:19 -0800
Lines: 33
Distribution: su
Message-ID: 
NNTP-Posting-Host: bmw.stanford.edu
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Xref: shelby.stanford.edu su.class.cs244a:4949

***** ack packet recieved (ack 21862)
***** data packet sent ( 536 bytes, seq 24397)
++++++ retrans #0 of pkt seq 24397
***** data retrans packet sent ( 536 bytes, seq 24397)
++++++ retrans #0 of pkt seq 21862
***** data retrans packet sent ( 536 bytes, seq 21862)
++++++ retrans #0 of pkt seq 22398
***** data retrans packet sent ( 536 bytes, seq 22398)
++++++ retrans #0 of pkt seq 22934
***** data retrans packet sent ( 536 bytes, seq 22934)
++++++ retrans #0 of pkt seq 23470
***** data retrans packet sent ( 536 bytes, seq 23470)
++++++ retrans #0 of pkt seq 24006
***** data retrans packet sent ( 391 bytes, seq 24006)
***** data_offset: 1, lba: 0x2d091
***** ack packet recieved (ack 24933)

I retrans N=3071 bytes, 21862->24933, but out of order...though all at once.

----------------------------------------------------------------------
Test 2.M [out of 5]
Checks that Tx implements Go-Back N.
Results: NOT OK
Go-back N not enforced (retransmitted only up until 221 rather than 3271)

----------------------------------------------------------------------

The handout says just that it must retransmit all data starting at n, but
does not mention anything about order.  So is this something I need to
change, or just a mistake with the script?
-aki-


.