From c4d164c9520bbe589151770841d4714b07a1f78f Mon Sep 17 00:00:00 2001 From: haskal Date: Fri, 14 Feb 2020 20:02:47 -0500 Subject: [PATCH] Write readme --- Makefile | 4 ++-- README.md | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 5793aa7..86c1bdb 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ CONTAINER_DIR=$(TESTS_DIR)/container TEST_SIM_PKG=https://course.ccs.neu.edu/cs3700sp20/archive/bgp-sim.tar.gz CCIS_TEAM_NAME=hash-lang-uwu -CCIS_PROJECT_NAME=project2-milestone +CCIS_PROJECT_NAME=project2 CCIS_SERVER=login.ccs.neu.edu CCIS_PATH=CS3700/$(CCIS_PROJECT_NAME)/ CCIS_FMT_CHECK=/course/cs3700sp20/code/project2/project2_format_check.py @@ -45,7 +45,7 @@ submit: upload ssh $(CCIS_SERVER) -t -- "cd $(CCIS_PATH); make ccis-clean; $(CCIS_TURNIN) $(CCIS_PROJECT_NAME) ." ccis-test: $(TESTS_DIR) - cd $(TESTS_DIR) && ./sim --router ../router milestone + cd $(TESTS_DIR) && ./sim --router ../router all ccis-clean: $(RM) -r $(TESTS_DIR) diff --git a/README.md b/README.md index 2a3b639..3e80fe0 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,15 @@ walks the tree to find the most specific route node corresponding to the request address. The router itself is based on Racket's built-in I/O multiplexing to automatically manage I/O between multiple sockets. +### Update since milestone submission + +There were three major parts to the post-milestone effort. We implemented the "being mean to peers +that don't pay you" rules with fairly little effort, and we also implemented route aggregation and +disaggregation with minimal changes to the existing radix tree backend and some additional router +logic. Finally, (the most time-consuming part) we fixed bugs in the existing implementation that we +found when evaluating against the full test suite. Besides bugs, just adding aggregation and +meanness functionality was all that was necessary to pass all the tests. + ## Challenges - **No existing radix tree package in Racket.** @@ -32,3 +41,8 @@ I/O between multiple sockets. For the milestone submission, we included some basic internal unit tests but there isn't a lot of code coverage on those yet. We also ran the simulator milestone tests against the current router implementation and both milestone tests are passing. + +For the final submission, we included some more basic internal unit tests where necessary when +implementing new features. We also ran the provided simulator (the newest version provided) against +the router testing for all tests. Currently, all provided tests pass when testing on the CCIS login +server.