network project ideas

5

Click here to load reader

Upload: raj-ganesh

Post on 10-Apr-2015

239 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Network Project Ideas

Networking project ideas

Introduction Here are some ideas of projects in the Networking area. Some of these are new, and some are ideas that have run before but could be run again. Note that, unlike the normal project ideas, these ideas do not have a contact listed against them. They are there to give you ideas of the sort of things that could be done. If a project idea seems interesting, and you would like to pursue it further, then you should discuss it with one of the lecturers who are experienced in the Networking area: Bill Buchanan, Gordon Russell, Ahmed Al-Dubai, Imed Romdhani, Jim Jackson, Robert Ludwiniak or Neil Urquhart. They may not be able to help you directly, but will at least be able to point you to somebody better placed, perhaps because their specialist knowledge is in the area of the project. 1. Title: Health-based Message Passing the .NET 3.0 Framework Applicable Programmes: Software Engineering/Development, Networking, Distributed Systems, Internet Computing, and so on. Style: Applied Research, .NET prototyping, Experimental Evaluation Outline: The .NET 3.0 Framework provides new communication foundations which allow for enhanced application security, and for improved distributed systems. This project investigates the application of the .NET 3.0 into distributing processes around an enterprise network, and to make efficient use of message passing to synchronise data sources. 2. Title: Enhanced Identity Management using Windows Cardspace Applicable Programmes: Software Engineering/Development, Networking, Distributed Systems, Internet Computing, and so on. Style: Applied Research, .NET prototyping, Experimental Evaluation Outline: The .NET 3.0 Framework provides new authentication techniques, including Windows Cardspace, which should allow for a single login and passport. It will investigate how secure data can be kept on users, and this can be handled with the .NET 3.0 framework. 3. Title: Host-based Intrusion Detection System using Anomaly Detection Methods Applicable Programmes: Software Engineering/Development, Networking, Distributed Systems, Internet Computing, and so on. Style: Applied Research, .NET prototyping, Experimental Evaluation Outline: There is an increasing need for intrusion detection systems (IDSs) which allow for enhanced security, especially in protecting hosts from attack. The objective of this project is to develop a user pattern for normal activity, and then to run an IDS which detects possibly anomalous behaviour. The system will use the .NET framework, and interface to other IDS systems, such as Snort. 4. Title: Fraud Detection using Anomaly Detection Techniques Applicable Programmes: Software Engineering/Development, Networking, Distributed Systems, Internet Computing, and so on. Style: Applied Research, .NET prototyping, Experimental Evaluation Outline: One method of determining possible fraudulent behaviour is to define normal activity

Page 2: Network Project Ideas

on a server, and then to monitor for abnormal, or anomalous, behaviour. This project focuses on capturing normal server behaviour and determining possible attempts at fraud using a definition of anomalous behaviour. 5. Title: Analysis and Evaluation of the Windows Event Log for Forensic Purposes Applicable Programmes: Software Engineering/Development, Networking, Distributed Systems, Internet Computing, and so on. Outline: The Windows Event log is often used in digital forensics cases, but, unfortunately, it is flawed in many ways, and often cannot be seen as a verifiable method of determining events. This project will analyse these weaknesses, and provide best practice for their analysis. 6. Title: Analysis of Dynamic Network Routing Protocols Applicable Programmes: CNDS/Network Computing Style: Network Performance Simulation Outline: Original network routing protocols were developed to support fixed links where topology changes were infrequent. Now with the advent of highly mobile devices, the issue of routing through a very dynamic mesh of nodes is a key development area. The focus of this project would be to compare different routing protocols in the context of highly mobile systems. This would be achieved by using a network simulation tool (e.g. QualNet,OpNet) 7. Title: Cisco Switch Emulation Applicable Programmes: Networking/Programming route Style: Technical/Programming Outline: I have written a 2950 switch emulation shell, which provides the user with an IOSstyle interface which runs in Linux. The commands are there, but much of the functionality is missing. I have a number of project ideas which can use this shell as the basis for their work, including • Emulating layer 2 switching in Linux (e.g. using brctl) • Emulating ACL layer 2 security in Linux • Supporting VLAN databases (e.g. VTP and DTP) • Emulating port security in Linux Languages: Perl 8. Title: Automatic IP allocation detection for labs Applicable Programmes: Networking/Programming route Style: Technical/Programming Outline: In large labs, such as the JKCC, it is useful for various research activities to understand which IP has been assigned to which physical seat in the lab. You could go round the lab and do it by hand, but this is time-consuming and never ending (as machines are replaced and moved around). This project looks at induction techniques to work out where each IP is physically located, using passive techniques such as timetable information and web log analysis. So, for instance, the CO22001 tutorial happens at 1-3pm in cluster 4, and during that time they must use http://db.grussell.org. It is therefore likely that all IPs used to access the web site which belong to Napier which appear in the web log at that time all belong in cluster 4. Similarly, two people who start doing SQL at 1am in the JKCC at roughly the same time are probably sitting together. This inductive information can be combined with pop-up windows which ask the students "where are you currently sitting"? By combining different techniques we can avoid asking all the students where they are when they login, and detect errors (a student says they are in cluster 1 when they are in 5). Languages: flexible

Page 3: Network Project Ideas

9. Title: Layer 3 firewalls in Linux using ACL Applicable Programmes: Networking/Programming route Style: Technical/Programming Outline: Rather than using the excellent IPTABLE commands to control a linux firewall, one might wish to control the firewall using the Cisco-style ACL commands. This project looks as the compatibility of the two approaches, and builds an interface which converts ACL to IPTABLE commands, and vice versa. Possible extensions to this approach would be to optimise ACL masks into as few IPTABLE commands as possible (rather than using a simple 29 1-to-1 mapping approach). Languages: flexible 10. Title: Network teaching approaches using Linuxzoo Applicable Programmes: Networking/Programming route Style: Technical/Programming Outline: My linuxzoo.net site gives the user their own virtual machine with a single ethernet port running IPv4. Looking to the future, I would like a way to do some of the following: support IPv6, support routing tutorials, look at client/server problems. I would prefer to do these with a single machine per student. This project could be technical (e.g. get IPv6 running and evaluate), or theoretical (concentrating on approach to client/server with a single machine). If you want to run code in the linuxzoo server, then you should like PERL. Otherwise the choice is yours. Languages: perl 11. Title: A Javascript Virtual Cisco Lab Wiring Tool Applicable Programmes: Networking/Programming route Style: Technical/Programming Outline: This project is to provide students which a visual tool which mimics the physical view of Cisco routers and switches. Cisco equipment sits in a rack, and has many network sockets for plugging and unplugging connections, along with different types of wires. A system which virtually supports wiring up different network configurations and topologies would be an excellent learning tool, especially if combined with a system which could check if the wires had been plugged into the right places! Languages: flexible. But Javascript recommended. 12. Title: Extend LinuxZoo with Dynamips Applicable Programmes: Style: Linux/Programming Outline: Dynamips is a processor emulator which mimics the hardware of a cisco router. You can load on an IOS, and you have a perfect(ish) emulator of a router or switch which runs in Linux. This could then be added to linuxzoo.net, allowing users to run a router in the same way they run a linux emulator. A tutorial could then be written to demonstrate the usefulness of such a device. Components should include • Investigating dynamips, router emulations, simulations, IOS tutorials, evaluation techniques, etc. • Making dynamios run reliably in Linux • Adding in dynamios to linuxzoo in router mode • Writing a tutorial to demonstrate the implementation • Evaluating the system by asking students to run the tutorial Languages: A little C, a little Perl, XML, and Cisco IOS.

Page 4: Network Project Ideas

13. Title: IPv6 in Linuxzoo Applicable Programmes: Style: Linux/Programming Outline: My linuxzoo.net site gives the user their own virtual machine with a single ethernet port running IPv4. Looking to the future, I would like a way to allow users to learn about IPv6. This would include: • IPv6 in openvpn (this is used to run my virtual network) • IPv6 specific command which would make a useful tutorial • IPv6 addresses using dhcpd bind9 • Implement IPv6 in linuxzoo.net • Firewall rules to manage IPv6 traffic • Traffic shaping for IPv6 traffic • Write a tutorial for users to learn IPv6 • Evaluate your tutorial with real students Languages: perl, xml 14. Title: Network Security for LinuxZoo Applicable Programmes: Style: Linux/Programming Outline: Linuxzoo is my virtual linux environment. It provides virtual computers to users, and these computers run on a virtual network. Right now, there is a basic statistic-based security system running in the network, plus a web proxy and some traffic shaping. This project would examine LinuxZoo's security requirements, analyse the current security technologies, investigate better and newer approaches to security, propose updated systems, and see at least one of those implemented and evaluated within LinuxZoo. Ideally the resulting implementation would be proactive, detecting problems and throttling machines (or shutting them down) when problems arise. • Investigating firewalls, openvpn, iptables, squid, snort, tc, SE Linux, and ip route. • Perl, cgi, remote system management • Implementing a solution in linuxzoo.net • Evaluating the solution. Languages: iptables, tc, perl. 15. Title: Extend LinuxZoo with PIX emulation Applicable Programmes: Style: Linux/Programming Outline: The PIX firewall is a Cisco technology for providing firewall protection to a network. This is a hardware platform based on a standard PC architecture. The qemu emulator, which emulates PC hardware within linux, has been modified to run the PIX OS. This could then be added to linuxzoo.net, allowing users to run a PIX in the same way they run a linux emulator. A tutorial could then be written to demonstrate the usefulness of such a device. Components should include • Investigating pemu, linuxzoo, simulations, PIX tutorials, evaluation techniques, etc. • Making pemu run reliably in Linux • Adding in pemu to linuxzoo • Writing a tutorial to demonstrate the implementation • Evaluating the system by asking students to run the tutorial Languages: linux admin, XML, a little Perl, and Cisco PIX. 16. Title: VNC for LinuxZoo Applicable Programmes: Networking type students Style: Technical, experimenting, investigating, configuring, editing C or Java.

Page 5: Network Project Ideas

Outline: Right now linuxzoo.net runs the virtual machines with ssh or telnet access. This is becoming insufficient for modern linux machines. This project is to consider how to add a GUI interface to the virtual machines. This will cover the following points:

• Investigating firewalls, iptables, proxying (e.g. proxytunnel), java applet based clients (e.g. telnet, ssh, vnc applets), user-based evaluation techniques.

• Graphical interface technologies available (e.g. vnc) • Proxying technology to allow remote access through an "unhelpful" firewall • Port multiplex techniques for allowing multiple client applications to share a single server port

(e.g. ssh, vnc, telnet all being able to connect via port 22). • Implementing a solution in linuxzoo.net • Producing a tutorial to demonstrate the usefulness of this interface. • Evaluating the solution and your tutorial.

Languages: iptables, perhaps C, java, XML.