2017-2018-1 20155207 《信息安全系统设计基础》第11周学习总结
2017-2018-1 20155207 《信息安全系统设计基础》第11周学习总结
教材学习内容总结
第11章 网络编程
11.1 客户端——服务器编程模型
- 每个网络应用都是基于客户端-服务器模型
11.2 网络
- 以太网段:包括一些电缆和集线器
- 桥接以太网:使用一些电缆和网桥,多个以太网连接成的较大局域网
- internet互联网络:多个不兼容的局域网通过路由器连接
- 协议消除了不同网络之间的差异
11.3 全球IP因特网
- 每台因特网主机上都运行实现TCP/IP协议
11.3.1 Ip地址
- 网络字节顺序:大端字节法
11.3.2 因特网域名
gethostbyname
和gethostbyaddr
函数,从DNS库中检索任意主机条目
11.3.3 因特网连接
- 因特网客户端和服务器通过在连接上发送和接收字节流来通信
11.4 套接字接口
- 套接字接口:一组函数,与Unix I/O函数结合起来,用以创建网络应用
11.4.1 套接字地址结构
- 从Unix程序的角度来看,套接字就是一个有相应描述符的打开文件
11.4.2 socket函数
- 服务器和客户端使用
socket
函数创建套接字描述符
11.4.3 connect函数
- 客户端调用
connect
函数来建立和服务器的连接
11.4.4 open_clientfd函数
11.4.5 bind函数
- 服务器用来和客户端建立连接
bind
函数将my_addr
中的服务器套接字地址和套接字描述符sockfd
连接起来
11.4.6 listen函数
- 将
sockfd
从一个主动套接字转化为一个监听套接字
11.4.7 open_listenfd函数
11.4.8 accept函数
- 服务器等待来自客户端的请求
11.4.9 echo客户端和服务器的示例
11.5 web服务器
11.5.1 web基础
- web客户端与服务器交互用基于文本的应用级自协议HTTP
11.5.2 web内容
- 服务静态内容:读取磁盘内容返回客户端
- 服务动态内容:运行可执行文件并输出结果
11.5.3 HTTP事务
- 1.HTTP请求
- 2.HTTP响应
11.5.4 服务动态内容
11.6 综合:TINY Web服务器
教材学习中的问题和解决过程
- 指针数组:数组,数组中元素都是指针 int *daytab[13]
- 数组指针:指针,指向数组int (*daytab1)[13]
- 指针函数:函数,返回值是指针类型,int *comp()
- 函数指针:指针,指向函数,函数名就是函数指针int (*comp1)()
- 数组一定有数据个数和数据类型
- 函数一定有形参类型和返回数据类型
- 数组指针函数指针中*和指针名用括号括起来
代码调试中的问题和解决过程
代码托管
上周考试错题总结
其他(感悟、思考等,可选)
复习了第九、十、十一周的代码。发现好多东西虽然学习过了,但是过段时间可能会忘记,所以复习是很必要的
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第11周 | 200/200 | 2/2 | 20/20 |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
-
计划学习时间:XX小时
-
实际学习时间:XX小时
-
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)