2017-2018-1 20155214 《信息安全系統設計基礎》第13周學習總結
阿新 • • 發佈:2017-12-17
主機 碼雲 關於 信息 ... 總結 簡單 使用 字符
2017-2018-1 20155214 《信息安全系統設計基礎》第13周學習總結
教材學習內容總結
本章主要學習網絡編程,重點研究 客戶端-服務器編程模型 。本章學習的知識承接了我們之前學習的計算機網絡課程,與本學期的 信息安全技術 和 網絡安全編程 課程息息相關。對於信息安全系學生而言不可謂不重要。
在本章學習中,重點實現了:
- socket服務器和客戶端搭建
- daytime服務器
- echo服務器
- wc服務器
- 服務器叠代
- 服務器並發
- 服務器文件簡單加密
第11章習題解答
- 練習題11.1
十六進制地址 | 點分十進制地址 |
---|---|
0x0 | 0.0.0.0 |
0xffffffff | 255.255.255.255 |
0x7f000001 | 127.0.0.1 |
0xcdbca079 | 205.188.160.121 |
0x400c950d | 64.12.149.13 |
0xcdbc9217 | 205.188.146.23 |
- 練習題11.2
編程hex2dd.c,將他的十六進制參數轉換為點分十進制字符串並打印出結果。
hex2dd.c 碼雲鏈接
- 練習題11.3
編程dd2hex.c,將他的點分十進制參數轉換為十六進制數並打印出結果。
dd2hex.c 碼雲鏈接
- 練習題11.4
編寫HOSTINFO的一個版本,用inet_pton而不是getnameinfo將每個套接字地址轉換成點分十進制地址字符串。
Hostinfo 碼雲鏈接
- 練習題11.5
在10.11節中,我們警告過你關於在網絡應用中使用標準I/O函數的危險,然而,CGI程序卻能沒有任何問題地使用標準I/O。為什麽?
在子進程中運行的CGI程序不需要顯式地關閉他的輸入輸出流。當子進程終止時,內核會自動關閉所有描述符。
詳細總結本章要點
==socket服務器和客戶端搭建==
- 如何創建服務器:
在服務器端建立套接字所涉及的步驟如下:
- 創建一個socket可使用socket()的系統調用
- 使用bind()系統調用套接字綁定到一個地址。對於互聯網上的服務器套接字,地址包括主機的端口號。
- 連接監聽listen()系統調用
- 接受連接使用accept()系統調用。此調用通常會阻塞,直到客戶端與服務器連接。
- 發送和接收數據read()和write()系統調用.
- 如何創建客戶端:
- 系統調用有所不同的客戶端和服務器建立連接,但兩者套接字涉及的基本構造。這兩個過程分別建立自己的套接字。
- 在客戶端建立套接字所涉及的步驟如下:
- 創建一個socket可使用socket()的系統調用
- 套接字連接的服務器地址使用connect()系統調用。
- 發送和接收數據。做到這一點的方法有許多,但最簡單的方法是使用read()和write()
==daytime服務器實現==
- 設計內容
- 設計思路
- 運行截圖
daytime服務器 碼雲鏈接
==echo服務器實現==
- 設計內容
- 設計思路
- 運行截圖
echo服務器 碼雲鏈接
==wc服務器實現==
- 設計內容
- 設計思路
- 運行截圖
wc服務器 碼雲鏈接
==服務器叠代==
這是最簡單形式的服務器的服務進程的客戶端和第一個請求,然後完成後,需要從其他客戶機的請求。同時,另一個客戶端一直等待。
==服務器並發==
這種類型的服務器運行多個進程並發服務請求一次。因為一個進程可能需要更長的時間,但其他客戶機又不能等太久。 Unix下寫一個並發服務器的方法:
- 多進程
- 多線程
==服務器文件簡單加密==
- 設計內容
- 設計思路
- 運行截圖
文件加密服務器 碼雲鏈接
代碼托管
結對及互評
本周結對學習情況
- [結對同學學號1](博客鏈接)
- 結對照片
- 結對學習內容
- XXXX
- XXXX
- ...
其他(感悟、思考等,可選)
xxx
xxx
參考資料
- 《深入理解計算機系統V3》學習指導
- ...
2017-2018-1 20155214 《信息安全系統設計基礎》第13周學習總結