1.3 网络核心
由相互连接的路由器构成的网络。 传送数据原理:
1、电路交换
多路复用—将网络资源分片 分片方式:频分FDMA、时分TDMA
2、分组交换
统计复用 特点:资源竞争、拥塞、存储转发:分组每次转发一站(一个路由器) 分类:数据报网络TCP/IP、虚电路网络
1.4分组延迟
1、处理时延: 检查错误位、选择输出链路
2、排队时延: 等待被发送到输出链路上的时间
3、传输时延: R=链路带宽,L=分组长度 发送分组比特流时间=L/R
4、传播时延: d=物理链路长度,s=介质信号传播速度,传播延迟=d/s
总时延=以上四个之和
分组丢失: 分组到达输入链路时发现缓冲区已满,则路由器丢弃分组 /当分组在路由器内部要转发到输出链路时发现输出缓冲区队列已满,则丢弃分组。
吞吐量Throughput:单位时间内整个网络传输数据的速率或分组数/bps
1.5协议层及其服务模型
ISO/OSI参考模型
TCP/IP参考模型 网际协议栈
层级通信
1.6网络安全概述
主动攻击: 攻击网络服务
被动攻击: 窃取网络信息,不修改网络服务
网络安全的重要属性: 真实性、可用性、机密性、完整性、不可否认性
2.1:应用层协议原理
CS体系结构:
服务器:总是打开的主机,具有固定的众所周知的IP地址。主机集群常被用于创 建强大的虚拟服务器
客户机:同服务器端通信,可以间断同服务器连接,可以拥有动态IP地址,客户 机相互之间不直接通信
纯P2P体系结构
没有总是打开的服务器;任意一对主机直接相互通信;对等方间歇连接并且可以改 变IP地址。 优点:自拓展性。 缺点:难以管理
CS和P2P混合的体系结构
例子:Napster 中心服务器记录对等方内容。即时通讯
进程通信:
同一主机上的两个进程通过内部进程通信机制进行通信,不同主机上的进程 通过交换报文相互通信
客户进程:发起通信的进程;服务器进程:等待联系的进程。
套接字:
进程通过套接字在网络上发送和接收报文;套接字又叫做应用程序编程接口 API,用户通过API对传输层的控制仅限于:1、选择传输协议 2、能设定几个参数
进程寻址:
主机有唯一的IP地址,一台主机能够运行许多进程,仅靠IP不够,进程标识包括IP地址和端口号(常用端口:web服务80,邮件25)
应用层协议:
包括交换的报文类型、报文类型的语法,字段的语义等 公共领域协议:HTTP 可供大家使用 由RFC文档定义 专用协议
因特网传输协议提供的服务:
TCP:面向连接的服务,可靠的传输服务,流量控制、拥塞控制,没有时延、带宽保证
UDP:无连接,不可靠的数据传输
(面向连接的服务不一定可靠)
安全TCP:
SSL安全套接层
2.2.1:HTTP概述
HTTP: 超文本传输协议hypertext transfer protocol Web的应用层协议,C/S模式(client:浏览器browser请求,接收,“解释显示” web对象。Server:web服务器响应请求,发送web对象) Web: 网页(web页,或称文档)由许多对象组成。 对象就是文件,可以是HTML文件,JPEG图像,Java applet,音频文件... 多数网页由单个基本HTML文件和若干个所引用的对象构成,每个对象被一个URL (Uniform Resource Locater统一资源定位符)寻址
HTTP概述
2.2.2:非持久连接和持久连接
HTTP分为非持久和持久 非持久: 每个TCP连接上只传送一个对象,下载多个对象需要建立多个TCP连接 持久: 一个TCP连接上可以传送多个对象
响应时间模型 RTT:round-trip time一个小分组从客户主机到服务器再到客户主机所花费的时间 (非持久)
2.2.3:HTTP报文格式
两类:请求报文;响应报文
HTTP请求报文:
ASCII文本(易于人读格式)
请求方法类型:HTTP/1.0:
GET:
POST:客户机向服务器发送数据和信息
HEAD:服务器收到head请求时,用HTTP报文进行响应,但不返回请求对象。主要用在通信操作控制方面。
HTTP/1.1:
GET,POST,HEAD
PUT:文件在实体主体中被上载到URL字段指定的路径
DELETE:删除URL字段指定的文件
上载表单(各字段)输入值
POST方法
网页时常包含表单输入,输入值在请求报文的实体主体中被上载到服务器
URL方法
使用GET方法,表单(各字段)输入值被上载,以URL请求的字段
HTTP响应报文格式:
ASCII组成
HTTP响应状态码:
200 OK 请求成功,所请求信息在响应消息中返回
301 Moved Permanently 所请求的对象已经永久迁移
400 Bad Request 该请求不能被服务器解读
404 Not Found 服务器上不存在所请求文档
500 Internal Server Error 服务器内部错误
2.2.4:用户与服务器的交互
Cookies:提高用户与服务器端的交互性
Cookies的四个重要组件:在HTTP相应报文的cookie首部行
在下一条HTTP请求报文中的cookie首部行
Cookie文件保存至用户主机中并被用户浏览器管理
Cookie信息也保存在Web站点的后端数据库中
2.2.5:Web缓存
Web缓存(代理服务器):
在不涉及原始服务器的情况下满足客户端HTTP需求 用户配置浏览器:Web访问经由缓存: 所有HTTP请求指向缓存,对象在缓存中,服务器返回对象,否则缓存器向其实服务器发出请求,接收对象后转发给客户端 减少客户机请求响应时间,减少内部网络与接入链路上的通信量,能从整体上大大降低 因特网的Web流量
条件GET方法:
证实缓存器中的对象是否为最新,在缓存器请求报文中包含对象最后 的修改时间:If-modified-since 如果是最新对象,则响应报文中不含对象 HTTP/1.0 304 Not Modified
2.3:文件传输协议
File Transfer Protocol RFC:959,ftp服务器 端口号 21
2.4:SMTP协议
三个重要组成部分:邮件协议、邮件服务器、用户代理
RFC:2821, 使用TCP,端口号25,直接发送
传输三个阶段:握手,传输邮件信息,结束
SMTP关注要点:使用持久连接
要求邮件消息(Header&Body)必须是7-bit ASCII
SMTP使用CRLF.CRLF来判断邮件消息的结束
与HTTP比较: HTTP是拉协议,SMTP是推协议;
都有ACSII命令/应答交互,状态码;
HTTP:每个对象封装在它各自的HTTP响应消息中发送
SMTP:一个邮件内各个对象置于同一个邮件消息的多目部分发送
2.4.2:邮件报文格式和MIME
RFC 882:文本邮件消息格式标准
信头-头部行 To:/From:/Subject:这些头部不同于SMTP命令
信体:ASCII字符
MIME:
multiple internet mail extensions 多用途因特网邮件拓展(RFC 2045,2046,5322等) 增添额外的信头头部声明MIME content-type
Lumos 2020.2.18