Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS415 Minithreads Project 5 Overview Adrian Bozdog (Adi)

Similar presentations


Presentation on theme: "CS415 Minithreads Project 5 Overview Adrian Bozdog (Adi)"— Presentation transcript:

1 CS415 Minithreads Project 5 Overview Adrian Bozdog (Adi) adrianb@cs.cornell.edu

2 CS414 Minithreads overview2 What you have to do  Implement Ad-hoc networking layer  a version of Dynamic Source Routing alg  Communication layers should use miniroute_send_pkt instead of network_send_pkt  Routing layer can use network_send_pkt  A new network_handler routine should deal with all packets  There may be packets (control routing packets, packets for other machines) that are not for the current machine  Forwards packets that contain data for the current machine to the old network handler

3 CS414 Minithreads overview3 Routing layer  Data may be sent through intermediate nodes  A source uses a routing path to every destination  Processes three types of routing packets:  Data packets  Route Discovery packets  Route Reply packets Network UDP-like protocol TCP-like protocol User application Routing

4 CS414 Minithreads overview4 Routing packets (1)  Data packets:  Contain the path to the destination  The intermediate nodes should not involve communication layers (i.e TCP, UDP layers)  Route Discovery packets:  Establish routes from sources to destinations  Flood the network until the destination is reached  Every packet is flooded for at most MAX_ROUTE_LENGTH – 1  Every machine adds itself to the route path before broadcasting the network

5 CS414 Minithreads overview5 Routing packets (2)  Route Reply packets:  Used to give route information to the sources  Send by destinations back to the sources  Flooded through the network until they are broadcasted MAX_ROUTE_LENGTH times or reach the sources  Do not change the routes established by the Route Discovery packets

6 CS414 Minithreads overview6 Routing cache  Avoid discovering a route to the destination for every sent packet  Keeps SIZE_OF_ROUTE_CACHE routes to destinations  A cached route is used only if it is not older than 3 seconds  Otherwise run the route discovery protocol to get the route to destination

7 CS414 Minithreads overview7 Code change/addition  Changes to network.h  Set BCAST_ENABLED to 1  Set BCAST_ADDRESS  192.168.1.255 for ad-hoc network (see instructions for setting an ad-hoc network)  x.y.z.255 for CSUGLAB  For debugging purposes  Set BCAST_TOPOLOGY_FILE  Provide a topology file (see project description)  Used only in CSUGLAB (not on Jornada/Tablets)  Add miniroute.h and miniroute.c to your project

8 CS414 Minithreads overview8 Implementation hints  There must be at most a single routing discovery process for any destination at any time  Multiple threads should not trigger multiple routing discovery processes for the same destination  Only one cache entry for each destination  Use the route reply packets with the latest information (use seq_no for this)  Use the structures and data-types provided in miniroute.h  Allow other machines that run other student’s code to participate in the routing protocol

9 CS414 Minithreads overview9 Test Cases  Use any test from previous steps (project 3 and 4)  Write new tests reading application data from the terminal  Add read.c, read.h and read_private.h  Include “read_private.h” to minithread.c  Add miniterm_initialize to minithread_system_initialize  Test cases should use miniterm_read() to read data from the terminal

10 CS414 Minithreads overview10 Tablets  Can compile and run tests like CSUGLAB desktops  Can compile code for Jornada  Can synchronize with Jornada using ActiveSync  Run tests between Jornada and the Tablet  Specify the TCP/IP properties for the Tablet in the same way as for Jornada for ad-hoc network  Specify an Ip address based on your group  Set Subnet Mask to 255.255.255.0  Set Gateway to 192.168.1.254  Install the software used to compile code for Jornada ( see “Tips for running programs on Jornada” on CMS)  Install Handheld PC 2000 SDK

11 CS414 Minithreads overview11 Project 5 presentation  Demo slots :  Tuesday April 15 between 6 and 9 pm  Wednesday April 16 between 6 and 9 pm  Every group has a slot of 10 minutes  A test of my choice  should be compiled and run between Jornada machines / Tablet  should be compiled and run on CSUG desktops  Set a DEBUG option in the routing layer used to print information about messages received by the routing layer  You can sign for a slot on a sign-up sheet starting from Thursday afternoon (4119 Upson)


Download ppt "CS415 Minithreads Project 5 Overview Adrian Bozdog (Adi)"

Similar presentations


Ads by Google