My research advisors are Dr. Greg Lavender and Dr. Harrick Vin

The focus of my project is to discover high level abstract programming features that are common in network programming. Intel's IXP1200 network processor has six mutlithreaded microengines. It is currently programmed in microengine C, which is a very low level environment. The long term goal is to build a higher level programming language which will provide a friendlier programming environment to developers.

Links
Intel IXP1200 network processor
Sun's Chip Multi-Threading processors
Shangri-La Paper Repository
Click Website
Network System Designs book webpage
Fox Project
Internet RFCs
SML docs
SML/NJ Website
Edoardo Biagioni's webpage. Author of the TCP in SML Paper
Design of Foxnet paper
Tar file source code for Fox Net
IP Packet Header
IP checksum

References
How to set up a packet stream to be received in the IXP simulator
Header compression RFCs 1977 2507 2509 3095. Code based on rfc 1977.
IPv4 IPv6 interoperability RFC 2766. Code.

What am I doing this week?

3/17 - 3/23: Reading Concurrent Object Oriented Programming by Gul Agha
3/24 - 3/30: Reading Concepts & Notions for Concurrent Programming by Greg Andrews and Fred Schneider. My notes on the paper
3/31 - 4/14: Reading the Rainier doc.
4/15 - 4/21: Finding and reading papers on Click.
4/22 - 4/28: Reading The Click Modular Router by Kohler, Morris, Chen, Jannoti and Kaashoek. Reading Programming language techniques for modular router configuration.
5/12 - 5/19: Writing a program to run on the IXP simulator to understand interprocessor communication. Microprocessor 0 constructs packets from mpackets, signals microprocessor 1 which keeps a count of the number of packets received. receive.c count.c
5/20 - 6/2: Reviewing Haskell: map, fold, zip, zipwith, scan, monads, continuations
6/3 - 6/9: Reading about the Fox Project at CMU. Structured TCP in SML
6/10 - 6/18: Reading the Network Systems Design book and learning SML.
6/19 - 6/28: Training and working for First Bytes Summer Camp
6/29 - 7/15: Comparing SML to NCL (notes) and FPL
7/16 - 7/22 : SML program reads binary input and returns IP header. README double.sml binaryInput.sml ipdatagram.sml packet.sml
7/23 - 7/30 : Writing short SML programs and functions. demux.sml
7/31 - 8/3: The problem with the previous version of demux is that it takes a list of functions. Since all the elements of a list must be of the same type, all the functions must have the same input and output type. Using tuples instead of lists for input in demux3.sml allows different types of inputs but the number of functions is fixed.
8/4 - 8/8: In SML, signatures can be used to restrict the types allowed in a structure struct_general.sml. Signatures can also be used to provide the interface, letting structures provide the implementation sig_general.sml
8/9 - 8/17: On vacation
9/4 - 9/10: Reviewing code for IPv4 IPv6 interoperability. State diagrams for main program and IPv4 to IPv6 translation.
9/11 - 9/17: Written object-oriented interfaces for address translation address IPv4address addressPair addressTranslator addressTranslatorList addressOutofRangeException incorrectAddressTypeException
9/18 - 10/18: Writing the IPv4/v6 tranlation code in an object-oriented model, using Java.
12/15: Finished writing the IPv4/v6 translator in Java. Created a general package containing superclasses and interfaces that would be useful in network programming. code.tar.gz paper.zip



Contact
Tazeen Dhedhi
tazeen@alumni.cs.utexas.edu


Last updated: March 07 '05