LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 07-29-2006, 12:48 PM   #1
sarmadys
Member
 
Registered: Nov 2001
Distribution: Solaris, Redhat AS, SUSE
Posts: 52

Rep: Reputation: 16
Smile Master's degree proposal, Router software


Hello everyone,

After 8 years of being out of school I am trying to start my Masters degree. This specific type of degree is being done only by research (research mode vs. coursework mode). I need to prepare a research proposal and send it to the school. I will need a professor to accept me as a research student.


- I want to end my masters in 1.5 years (at most 2 years)

- I have something arround 1 years of experience in unix programming (BSD Sockets , etc) and very extensive database, J2EE, PHP and .NET experience.

- I am CCNA certified and have done switching and routing courses


With above background I had prepared below proposal:

-----------------------------------------------------------------
A: Study and development of a routing platform (OS) using PC hardware

In this project, a routing operating system based on Intel (or a RISC platform) PCs and hardware will be developed which is able to support a few routing protocols (example: static, rip) on simple interfaces (i.e serial or ethernet).
-----------------------------------------------------------------

Though after a days of searching and thinking I found that it is a very big project. I will need to develop a very stable operating system (memory management, processes, filesystem, ...) and a routing software on top of it and also a user shell.

So I am changing mymind to a smaller project:

-----------------------------------------------------------------
A: Study and development of a routing platform (OS) on top of a unix type operating system

In this project, a routing software on top of a stable unix type OS will be developed which is able to support a few routing protocols (example: static, rip) on ethernet interfaces. Platform will include a user shell. Entire software will be placed on a flash disk to form an appliance.
-----------------------------------------------------------------

Though I will look at already developed software like zebra, I should develop a completely new software.


Now

I need some advice from people here.

1- Is this proposal reasonable?

2- Is it possible to cover all the things in just 1.5 years ?

3- Are you able to suggest me a better research proposal?

4- Any other advice is appereciated.

Regards,
Mac
 
Old 07-29-2006, 02:43 PM   #2
Mara
Moderator
 
Registered: Feb 2002
Location: Grenoble
Distribution: Debian
Posts: 9,696

Rep: Reputation: 232Reputation: 232Reputation: 232
Hardware design with new OS + routing software is definitely too much. Good that you have realized it

Now, your second proposal... I don't know how it is on your uni, but when I studied, the most important question asked when evaluating the proposal (and the thesis) was: 'How is it different from the available solutions?'. There are many routing deamons.

I'd go a different way. I understand you find routing interesting. You know a number of protocols. So, you can think about the things you like and dislike about the protocols. A new feature maybe? Or maybe you'd like to write a very fast implementation of a protocol (for embedded systems, for example)? There are many possibilities.

If you prefer to stay with your orginal proposal, think about the question I have cited somewhere above.
 
Old 07-29-2006, 02:59 PM   #3
95se
Member
 
Registered: Apr 2002
Location: Windsor, ON, CA
Distribution: Ubuntu
Posts: 740

Rep: Reputation: 32
^ I agree w/ Mara. There is lots of routing software out there, so unless you have an original idea to go w/ it, I'd consider something else. Perhaps you can look at implementing some newer, not commercially used, protocols for LANs and what not, and compare their practical performance to the current protocols, etc..
 
Old 07-29-2006, 10:46 PM   #4
sarmadys
Member
 
Registered: Nov 2001
Distribution: Solaris, Redhat AS, SUSE
Posts: 52

Original Poster
Rep: Reputation: 16
Mara, thank you for your time and advice. Yes, I had the same worrries that a research project should offer a new thing. I contacted someone in that university and he confirmed that.

It seems I need to either put this away or find something new to implement in it. I need to read some papers (from ACME) and what kind of subjects do they choose for a masters research project.

Thank you again for your help.

95se, thank you very much for your help too.

Regards,
Mac
 
Old 07-30-2006, 01:08 AM   #5
blackzone
Member
 
Registered: Jun 2004
Posts: 256

Rep: Reputation: 30
Quote:
Originally Posted by sarmadys
A: Study and development of a routing platform (OS) on top of a unix type operating system

In this project, a routing software on top of a stable unix type OS will be developed which is able to support a few routing protocols (example: static, rip) on ethernet interfaces. Platform will include a user shell. Entire software will be placed on a flash disk to form an appliance.
My team leader wrote the rip module in 2 days and to set static route all you need is a script... I don't think you need 1.5 years.

Unless you are doing something innovating. There's really no point

The real problem you'll have is probably
1) performance issue. ip contrack will use alot of memory. The real problem is on the ram.
2) serial iterface. As there isn't too much support. You need to find "box" which have serial interface.
3) you'll need to learn flash filesystem. Also you'll probably need to find a way to shrink linux down so it fit on your flash. My suggestion is to go with "snapgear". If you can, use IXP intel processor. It boost the network performance alot(I don't know how but it does).
4) Kernal module. The "real work" isn't making the routing protocol. You need to "rework" the ip protocol stack. You need to "write" some modules as the current ip protocol stack just isn't good enough.
5) For the interface, you can either go with a web browser or CLI.


Not to mention the box you find probably have ports which share network card. You need to be familiar with device driver and add some switching code. You'll need to be familiar with EEPROM, and how to modify the chip on your board since very unlikely it'll behave the way you want. Not to mention You'll probably want to add encrypted filesystem to protect your work.

If you want to be innovate, the real work is on netfilter and making some ip conntrack module. And "IT'S NOT EASY".

And to be innovate, you can also add in round robin DNS support and traffic control(reasearch on TC). That way you can add in QoS support. Linux have pretty good traffic shapping support. You'll need to research on IMQ. As linux only support inbount traffic shapping.

You'll need to spend sometime cross compiling. You can use Linux From Scratch, it'll be pretty big though 20~40 MB. To be lazy, you can use snapgear 2~8 MB. And you'll probably spend a very long time wonder what mistake you make because "IT DON'T EVEN BOOT!".

Or read 100,000 lines of install script and dont' know why you can't install something.

Also the problem with RTC(real time clock). Not every box have a build in clock. You'll probably need to use a server clock.

Blah blah blah... SPend 10 hours compiling arm tool-kit and wonder why you can't even boot your box.

DON'T DO IT!

1) So for a easier proposal try to set your route box under vmware...
2) make a rip demone which send and receive package(I did this 5 years ago in university)...
3) Put a script when RIP want you to add route(e.g. route add -net blah netmask blah dev blah)... and your done!

Last edited by blackzone; 07-30-2006 at 01:46 AM.
 
Old 07-30-2006, 04:38 AM   #6
sarmadys
Member
 
Registered: Nov 2001
Distribution: Solaris, Redhat AS, SUSE
Posts: 52

Original Poster
Rep: Reputation: 16
blackzone, thank you for your great ideas. I had forgotten to mention ip stack which seems to be a separate project.

After reading your post, it seems to me that I really need to read some articles/papers to be able to prepare a better idea and proposal (otherwise my proposal will be rejected or I will need 5 years to complete it.)

It would be really better if professors could suggest proposals.

Thank you again for your great help.

Regards, Mac

Last edited by sarmadys; 07-30-2006 at 04:40 AM.
 
Old 07-31-2006, 01:35 AM   #7
chrism01
LQ Guru
 
Registered: Aug 2004
Location: Sydney
Distribution: Rocky 9.2
Posts: 18,359

Rep: Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751
Most resaerch profs have a favourite area, and may be willing to spin off enough work to make a Master's for you. They'll be your adviser, so still get credit.

This is a bit of a marketing article, but you may want to read into its refs and look at their code: http://searchopensource.techtarget.c...204142,00.html
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Stop the Oil Drilling Proposal in Alaska trickykid General 126 09-21-2016 08:20 AM
LXer: Proposal for an OpenDocument Icon LXer Syndicated Linux News 0 07-28-2006 06:21 PM
Cant Install Suse 10 * ERROR: No proposal Felpipe SUSE / openSUSE 5 05-05-2006 06:47 PM
SUSE 9.2 ftp - no software proposal alanbarnard SUSE / openSUSE 3 03-19-2005 01:57 PM
A Modest Proposal shane25119 General 4 09-30-2004 06:24 PM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 03:42 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration