====== An in-progress report about TCP-IP related test scenarios. ====== ---- __**Project Status**__ - **Active** **__Goal__ -** to share various aspects of TCP-IP encountered while constructing test scenarios for %%FreeBSD%% network stack's **//regression testing//** made during GSOC-2016. ---- ===== TODO List ===== * TCP options establishment ✔ * Connection close ✔ * Adding support for IP based protocols, such as - * DCCP * SCTP ✔ (Was already done). * Path MTU discovery. :!: * Selective Acknowledgements. * Blocking system calls. ✔ * Find a way of specifying the **window sizes of clients** in the best possible manner. * Shutdown. ---- ===== Weekly Updates ===== ==== Week-1 ==== * **Scenario -** __TCP flags__ * The 5 tests for testing TCP flags are complete and have been merged into the main repository. | [[https://github.com/shivrai/GoogleSummerOfCode-16/blob/master/gtests/net/packetdrill/tests/bsd/tcp/listen/listen-incoming-syn-ack.pkt|feat/listen-incoming-syn-ack]] | Merged ✔ | | [[https://github.com/shivrai/GoogleSummerOfCode-16/blob/master/gtests/net/packetdrill/tests/bsd/tcp/listen/listen-incoming-syn-rst.pkt|feat/listen-incoming-syn-rst]] | Merged ✔ | | [[https://github.com/shivrai/GoogleSummerOfCode-16/blob/master/gtests/net/packetdrill/tests/bsd/tcp/listen/listen-incoming-rst.pkt|feat/listen-incoming-rst]] | Merged ✔ | | [[https://github.com/shivrai/GoogleSummerOfCode-16/blob/master/gtests/net/packetdrill/tests/bsd/tcp/listen/listen-incoming-no-tcp-flags.pkt|feat/listen-incoming-no-tcp-flags]] | Merged ✔ | | [[https://github.com/shivrai/GoogleSummerOfCode-16/blob/master/gtests/net/packetdrill/tests/bsd/tcp/listen/listen-incoming-ack.pkt|feat/listen-incoming-ack]] | Merged ✔ | ==== Week-2 ==== * **Scenario -** [[SummerOfCode2016/TCP-IP-RegressionTestSuite/updates/ConnectionClose|Connection close]] * The 3 tests for testing TCP connection close are complete and have been merged into the main repository. | __feat/close-fin__ | Pull Request yet to be sent. :!: | | __feat/close-read-data-fin__ | [[https://github.com/nplab/packetdrill/pull/112|Pull Request]] Pending :?: | Merged ✔ | | __feat/close-unread-date-fin__ | [[https://github.com/nplab/packetdrill/pull/113|Pull Request]] Pending :?: | Merged ✔ | ==== Week-3 ==== * **Scenario -** __Blocking calls and ICMP__ * Unfortunately, I got to know late that **blocking calls are not supported in %%FreeBSD%%**. As a result, the test made for blocking-accept is useless as of now. \\ **UPDATE:** As pointed out by [[https://github.com/tuexen|Michael]], blocking calls are now working as of this [[https://github.com/nplab/packetdrill/commit/0b72293d1a22af11e46b89cd60e2c3f34377a4df|commit]], thanks to him :D | __feat/blocking-accept__ | Check if it works :!: | [[https://github.com/nplab/packetdrill/pull/116|Pull Request]] Pending :?: | Merged ✔ | * The test for testing handling of incoming ICMP packets. The pull request is yet to be merged. | __feat/icmp__ | [[https://github.com/nplab/packetdrill/pull/115|Pull Request]] Pending :?: | Merged ✔ | * **Tasks for next week** * Test for **SACK** (Selective Acknowledgements). :!: ==== Week-4 ==== * [[SummerOfCode2016/TCP-IP-RegressionTestSuite/updates/week4|Summary]] * **Scenario -** __PATH MTU Discovery__ ==== Week-5 ==== * [[SummerOfCode2016/TCP-IP-RegressionTestSuite/updates/week5|Summary]] * **Scenario -** * __Blocking System Calls__ * __Shutdown__ | __feat/blocking-accept__ | [[https://github.com/nplab/packetdrill/pull/116|Pull Request]] Pending :?: | Merged ✔ | | __feat/blocking-read__ | [[https://github.com/nplab/packetdrill/pull/117|Pull Request]] Pending :?: | Merged ✔ | {{summerofcode2016/tcp-ip-regressiontestsuite/updates/report-1.pdf?linkonly|Report-1.pdf}} ==== Week-6 ==== * [[SummerOfCode2016/TCP-IP-RegressionTestSuite/updates/week6|Summary]] * **Scenario -** ---- ===== Author ===== [[/ShivanshRai|ShivanshRai]]