aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarshall <stmr@umich.edu>2023-08-25 15:02:06 -0400
committermarshall <stmr@umich.edu>2023-08-25 15:02:06 -0400
commitc8e582b80d66e35a5c9d9e528ea4b1948a8697f2 (patch)
tree415707637ae0ca7904ef50316acbcbc4ab4a2eec
parent2fcf427bf04bba19e491c9bf6676c9ee1ab2068b (diff)
downloadwww-c8e582b80d66e35a5c9d9e528ea4b1948a8697f2.tar.gz
www-c8e582b80d66e35a5c9d9e528ea4b1948a8697f2.zip
final touches
-rw-r--r--template/news/2023-08-GSoC-QUIC.html.j210
1 files changed, 5 insertions, 5 deletions
diff --git a/template/news/2023-08-GSoC-QUIC.html.j2 b/template/news/2023-08-GSoC-QUIC.html.j2
index a88e63a9..25a4a83e 100644
--- a/template/news/2023-08-GSoC-QUIC.html.j2
+++ b/template/news/2023-08-GSoC-QUIC.html.j2
@@ -16,7 +16,7 @@ We chose to go with <a href="https://github.com/cloudflare/quiche">Cloudflare's
16After this, I worked on handling the receiving functionality of the communicator. This involved reading from the socket then processing the QUIC packets using the Quiche library. Then I implemented the ability to send messages in a similar manner. One of the last steps involved connecting everything together with the transport service so that the communicator can receive information about peers and relay messages. 16After this, I worked on handling the receiving functionality of the communicator. This involved reading from the socket then processing the QUIC packets using the Quiche library. Then I implemented the ability to send messages in a similar manner. One of the last steps involved connecting everything together with the transport service so that the communicator can receive information about peers and relay messages.
17Once I finished these tasks, the QUIC communicator got merged upstream and is currently an experimental feature. This is due to the packaging situation with Quiche as it is difficult for some users to install the library, and there still may be bugs lingering in the QUIC communicator. More testing and refinement is needed to offer a truly robust and reliable communicator. 17Once I finished these tasks, the QUIC communicator got merged upstream and is currently an experimental feature. This is due to the packaging situation with Quiche as it is difficult for some users to install the library, and there still may be bugs lingering in the QUIC communicator. More testing and refinement is needed to offer a truly robust and reliable communicator.
18 18
19Link to source code: <a href="https://git.gnunet.org/gnunet.git/tree/src/transport/gnunet-communicator-quic.c">QUIC communicator</a> 19Link to source code: <a href="https://git.gnunet.org/gnunet.git/tree/src/transport/gnunet-communicator-quic.c">QUIC communicator</a>.
20</p> 20</p>
21<h2>The current state.</h2> 21<h2>The current state.</h2>
22<p> 22<p>
@@ -24,12 +24,12 @@ The QUIC communicator currently functions and passes basic communicator tests. T
24</p> 24</p>
25<h2>Future Work.</h2> 25<h2>Future Work.</h2>
26<p> 26<p>
27We still need to develop a more robust solution to the certificate generation so that the Quiche API functions properly. Currently, we are using static, example certificates. Adding timers to each connection so that a timeout will trigger a connection to close also needs to be done. Finally, we should look into lowering the latency by finding where the code is too slow and optimizing it. 27We still need to develop a more permanent solution to the certificate generation so that the Quiche API functions properly. Currently, we are using static, example certificates. Adding timers to each connection so that a timeout will trigger a connection to close also needs to be done. Finally, we should look into lowering the latency by finding where the code is too slow and optimizing it.
28</p> 28</p>
29<h2>Challenges I Encountered</h2> 29<h2>Challenges I Encountered.</h2>
30<p> 30<p>
31One of the challenges was reverse engineering the Quiche C API because it has such limited documentation. I learned how to make use of the API by looking at the very simple example client and server examples that are provided in the Quiche repository. There is documentation for the Rust API which seems to operate pretty similarly, so this was helpful too at times. I overcame this challenge with the help and guidance of my mentor Martin Schanzenbach. 31One of the challenges was reverse engineering the Quiche C API because it has such limited documentation. I learned how to make use of the API by looking at the very simple example client and server examples that are provided in the Quiche repository. There is documentation for the Rust API which seems to operate pretty similarly, so this was helpful too at times. I overcame this challenge with the help and guidance of my mentor Martin Schanzenbach.
32</p> 32</p>
33<h2>Final notes</h2> 33<h2>Final notes.</h2>
34Overall, my experience with GNUnet was fantastic. My mentors were friendly and consistently available when I needed help, and I thank them for that. I'm thankful for the GNUnet community for being welcoming and understanding to new open source developers. I had a lot of fun learning how GNUnet works while developing my project. I am looking forward to contributing to GNUnet in the future! 34Overall, my experience with GNUnet was fantastic. My mentors were friendly and consistently available when I needed help, and I thank them for that. I'm thankful for the GNUnet community for being welcoming and understanding toward new open source developers like myself. I had a lot of fun learning how GNUnet works while developing my project. I am looking forward to contributing to GNUnet in the future!
35{% endblock body_content %} 35{% endblock body_content %}