CS144的實驗就是要實現一個用戶態TCP協議,對於提升C++的水平以及更加深入學習計算機網絡還是有很大幫助的。 第一個Lab是環境配置和熱身,環境按照文檔里的配置就行了,前面兩個小實驗就是按照步驟來的,就不細講了。 Writing webget 這一個實驗是要用他封裝好的socket庫寫 ...
Lab 分別是完成一個流重組器,TCP接收端,TCP發送端,TCP連接四個部分,將四個部分組合在一起就是一個完整的TCP端了。之后經過包裝就可以進行TCP的接收和發送了。 代碼全部在github上了。 Lab 流重組器 這一個實驗是要實現一個流重組器,傳入數據的片段以及起始位置,之后對其進行重組,並盡快將以及重組完成的數據輸出。 這里我使用的是紅黑樹來實現,也就是C 的std::set來實現。將未 ...
2021-02-16 11:12 1 511 推薦指數:
CS144的實驗就是要實現一個用戶態TCP協議,對於提升C++的水平以及更加深入學習計算機網絡還是有很大幫助的。 第一個Lab是環境配置和熱身,環境按照文檔里的配置就行了,前面兩個小實驗就是按照步驟來的,就不細講了。 Writing webget 這一個實驗是要用他封裝好的socket庫寫 ...
在Stanford CS144的課程實驗Lab0~Lab4中,我們動手實現了一個自己的TCP協議,並且能夠真的與互聯網通信!此外,感謝Stanford開源本實驗並提供了大量的優質測試用例,使得我們僅僅通過互聯網就能獲取到這么好的學習資源。 本篇博客將從我自己的角度出發簡單介紹TCP協議,闡述實現 ...
概述 在實驗 0 中,您使用 Internet 流套接字從網站獲取信息並發送電子郵件,使用 Linux 的傳輸控制的內置實現協議 (TCP)。這個 TCP 實現設法產生了一對可靠的有序字節流(一個從你到服務器,一個在相反的方向),即使底層網絡只提供“盡力而為”的數據報。我們的意思 ...
本文為我的斯坦福計算機網絡課的編程實驗(Lab Assignments)的學習總結。課程全稱:CS 144: Introduction to Computer Networking。 事情發生於我讀了半本《計算機網絡:自頂向下方法》后,想要找點練手的東西,碰巧在知乎上看到了這個推薦帖:CS144 ...
CS144lab筆記 此筆記為本人學習CS144課程實驗的筆記 由於時間比較倉促,過年家里事情也比較多,所以展示先只附上代碼,后期我會抽時間進行完善,爭取打造成一個通俗易懂的筆記 實驗代碼參考了了下面幾位博主的筆記 知乎-熱心小馮 康宇 peilei ...
在計算機領域,數據的本質無非0和1,創造0和1的固然偉大,但真正百花齊放的還是基於0和1之上的各種層次之間的組合(數據結構)所帶給我們人類各種各樣的可能性。例如TCP協議,我們的生活無不無時無刻的站在TCP協議這個“巨人”的肩膀上,最簡單的一個打開手機的動作。所以對TCP的認識和理解,可謂越來越 ...
計算機網路學得不好,首先先放個OSI七層網絡模型吧 在協議的控制下,上層對下層進行調用,下層對上層進行服務, 上下層間用交換原語交換信息。這樣可以提高傳輸速率,並且保證數據安全,所以說其實每一層都有存在的必要 但是現在互聯網上大家都有TCP/IP協議,可以說是某種黑話,他封裝了前三層 ...
工作上用Lora,需要開發相關模塊,分享一下學習的內容: Lora: 博主是做IT的,對Lora不了解。簡單理解為LPWAN(Low Power Wide Area Network)中一種技術,目前主要是中興在推廣;國內主要對手是NB-IOT,華為在推廣。 CLAA: 中國LoRa ...