[movitz-devel] 2 short, ip/udp related questions

Robert Swindells rjs at fdy2.demon.co.uk
Sun Jun 22 16:07:18 UTC 2008

Antonios Antoniadis wrote:
>On 6/22/08, Robert Swindells <rjs at fdy2.demon.co.uk> wrote:
>>  You wrote:
>>  >1. What is the way to send packets of some given protocol to movitz?
>> There isn't really a single way to generate protocol traffic.
>>  Which protocol do you want to try ?
>I wanted to try icmp, udp and tcp, to see if function ip input works
>for all cases. Most important though for now would be udp. Should I
>implement tftp before udp?

The IP layer doesn't care what is inside a message, it just needs to
have a correct checksum. As long as you can see correct data being
received then I would move on.

TFTP runs on top of UDP. See RFC 1350 and movitz/losp/lib/net/tftp.lisp.

>>  >2. I also asked this in the blog, do you think that after udp is
>>  >working, it's worth the time/effort to create some way to transfer
>>  >changes to a running movitz using udp? On one hand it will make
>>  >development easier, but on the other hand I'll (try to) write tcp
>>  >anyway also.
>> Where is your blog ? The link you sent me just gives a blank page.
>I am not sure whether I had to change the port for some reason after
>sending the link, although I don't think so. Anyway, going to
>www.recursively.org, and pressing the blog link from there, always
>works, except in the seldom cases that the server is down.

Ok, I can view it now.

>>  I would think about making movitz be in control of any transfer
>>  protocol and to use something that already exists so that you only
>>  need to write one side of it.
>>  The simplest protocol to implement would be TFTP.
>Do I understand this correct, that you mean implement tftp to transfer
>the changes, and don't bother more with udp (for this purpose of

You need to start thinking about the layers that will be in a full
stack. There are pieces of most of them already within Movitz, but
they are not all linked together, and may not be currently written in
a way which allows them to work together.

Maybe think about how a user would want to make use of a feature such
as reading a file from a remote system. From them running '(load
"foo")' on a lisp source file what would need to take place for it to
work ? Which streams would you implement and link together ?

One version of this example could use TFTP as the protocol to talk to
a file server.

Robert Swindells

More information about the movitz-devel mailing list