一、课程介绍
- 课程主要介绍通过一个实例建立对计算机网络的整体认识;
- 了解网络协议分层;
- 分析HTTP1、2、3的关系;
- 介绍CDN运行基本原理;
- 了解网络安全基本原则;
二、计算机网络整体认识
- 两种分析方法
-
- 自底向上——将模块逐步拼凑成一个系统
-
- 置顶向下——复杂问题入手,拆分为模块问题
- 通过蟹堡王开汉堡分店的例子可以类比为计算机网络结构——网络中的网络。
三、计算机网络基础
- 网络组成部分——主机(客户端、服务器)、路由器(存储转发)、网络协议
- 网络结构——网络中的网络
- 网络分层——物理层、数据链路层、网络层、运输层、应用层,各层不关心其他内容
- 协议——定义了在两个或多个通信实体间交换的报文格式、顺序,以及报文发送和接受所采取的动作。含标头和载荷。
四、web中的网络
了解HTTP
-
web页面本质是htmI文件
-
htm|文件包含引用对象(如JPEG图像、音频文件.....,每个对象可通过url寻址。如: www.someschool.edu/someDept/pi…
-
url:统一资源定位器
-
HTTP:超文本传输协议
-
web应用层协议
-
cs范 式:
-
客户端:请求、接收并显示“web对象”的浏览器(使用http协议)
-
服务端: web服务器发送对象来响应请求(使用http协议)
-
需要tcp支撑:
-
客户端向服务器发起TCP连接(创建socket),80端 口服务器接收来自客户端的TCP连接
-
HTTP是无状态的--服务器不维护任何关于过去客户端请求的信息(是HTTP之上的登西维护)tip:维护状态的协议是复杂的
- HTTP连接类型
- 非持久性HTTP--每请求一个对象,都进行一次连接
- -响应时间:RTT--小数据包在客户端和服务器之间来回传输的时间;
- -HTTP响应时间(每个对象) : 1个RTT用于发起tcp连接,1个RTT用于HTTP请求和前几个字节的HTTP响应;以及返回对象/文件传输时间,即非持久HTTP响应时间=2RTT+文件传输时间
●问题:
-
每个tcp连接的对象都要2RTT;操作系统对每个tcp连接都要开销;
-
浏览器通常会打开多个并行的tcp连接来并行的获取被引用的对象;
-
持久性HTTP--一次连接(tcp连接的打开的服务器(保持连接打开),多个对象可以通过一个tcp连接,在客户端和服务端之间发送)响应时间:对于所有引用的对象,只需1个RTT (将响应时间减半)
五、网络安全
- 三要素——机密性(攻击者无法获知通信内容)、完整性(攻击者对内容进行篡改时能被发现)、身份验证(攻击者无法伪造成通信双方的任意一方与另一方通信)