计算机网络笔记05 链路层
5.1 链路层概述
基本概念:
主机和路由器:结点
相邻结点的通信信道:链路 eg.wired links, wireless links, LANs
链路层的数据分组
帧 frame: 封装网络层的数据报
链路层的背景
在不同的链路当中使用不同的协议来传输数据报:e.g.,第一个链路以太网Ethernet,第二个链路是帧中继网络,第三个网络是802.11
不同的链路提供的服务也不同
链路层的服务
成帧, 链路接入:
将数据报封装成帧, 加上首部和尾部字段
多路访问(接入)
“MAC” 地址用于标识发送结点和接收节点
相邻结点间的可靠传输:
保证无差错地经链路层移动每个网络层数据报
在错误率低的链路中(光纤,某类双绞线)中不需提供,而无线链路:具有较高的错误率
流控制: 匹配相邻结点的 (发送/接收)速度
差错检验:
由信号衰减、噪声等产生差错
接收结点需要检测是否出现bit差错: 丢弃错误帧,告知发送结点重传(可选)
差错恢复(可选): 接收结点可以发现并修复bit差错,不需发送结点进行重传
半 / 全双工: 半双工指结点不能在发送的时候同时接收数据
链路层协议在何 ...
计算机网络笔记04 网络层
4.1 网络层概述
网络层服务和协议: 提供主机之间的逻辑通信。
在端系统中
发送方:将报文段封装成数据报,提交给数据链路层。
接收方:将数据报解析成报文段,提交给运输层。
在网络核心节点中
路由器:转发数据报,交付到目的主机
分组转发和路由选择
网络的两个主要功能
分组转发:分组到达路由器的输入链路,路由器将分组移动到正确的输出链路
路由选择:确定分组的路径
(第三个功能 可选)建立连接
在某些网络体系中存在连接:ATM (异步传输模式), 帧中继, MPLS
在交付数据报之前,要建立虚拟的连接:主机和路由器都参与连接
网络层 v.s. 运输层 连接服务:
网络层: 两个主机以及中间的路由器创建的虚电路
运输层: 两个进程直接建立连接的端到端连接,中间的路由器不参与
网络服务模型网络层能够提供的数据交付服务包括:
当运输层向网络层传递一个分组时:
确保交付
具有时延上界确保交付
为给定的源和目的地之间的分组数据流提供的交付服务:
有序分组交付
确保最低带宽
确保最大时延抖动
安全性服务
4.2 虚电路和数据报网络
数据报网络
虚电路网络
无连接的服务
面向 ...
计算机网络笔记03 运输层
3.1 概述和运输层服务
提供了不同主机中应用进程之间的逻辑通信而非物理通信
运输层协议工作在端系统中
发送方:将报文封装成报文段,提交给网络层
接收方:解析成报文,提交给应用层
提供了两种协议 TCP & UDP
运输层和网络层的关系
从通信和信息处理的角度看,运输层向上面的应用层提供通信服务,属于面向通信部分的最高层,同时也是用户功能中的最底层。
网络层:主机之间的逻辑通信
运输层:进程之间的逻辑通信
运输层的服务
可靠的、有序的交付:TCP
面向连接的逻辑通信:握手机制
流控制:发送速度不能大于接收速度
拥塞控制:从发送端系统感知、避免网络的拥塞
不可靠的、无序的交付:UDP
不提供必要的服务
尽最大努力向网络交付数据
运输层没有提供的服务
最低时延保障
最低带宽保障
多路复用和多路分解
多路分解:将运输层报文段中的数据交付到正确的套接字
多路复用:在源主机从不同的套接字中收集数据快,并为每个数据快封装上首部信息从而生成报文段,并将报文段传递到网络层
端口:
使用16bit的整数来标识进程
在不同主机上,相同端口可能有不同的用途
两种类型的端口010 ...
计算机网络笔记02 应用层
2.1 应用层协议原理网络应用程序体系结构应用程序研发很可能利用两种主流的体系结构之一:客户-服务端体系结构:
服务器:
持续地工作(365*24)
固定的、周知的地址(IP地址)
备有数据中心
客户端:
与服务器端通信
间歇地工作
可能更换地址
客户端不直接通信(客户总能通过该服务器的IP地址发送分组来与其进行联系)
对等/P2P体系结构:
没有常开的服务器
任意端系统之间直接通信
端系统是对等的
具有自扩展性
间歇地工作
管理起来比较复杂
适用于流量密集型的应用,如文件共享、下载加速、IP电话、IPTV
进程通信P59进程:主机上运行的程序。进程之间如何通信:
同一主机内部(操作系统):
管道、共享内存
由操作系统控制
不同主机之间
主机可能安装了不同的操作系统
使用套接字(Socket)机制,API
通过网络建立通信
客户和服务器进程:发起通信的进程被标识为客户,在会话开始时等待联系的进程是服务器。
进程与计算机网络之间的接口套接字是应用程序进程和运输层协议之间的接口, 类似于“门”的概念。通过套接字,不同端系统 ...
计算机网络笔记01 计算机网络和因特网
1.1 什么是因特网具体构成描述(硬件和软件组成)因特网是网络的网络,是一个世界范围的计算机网络。
连接数以亿计的设备: 主机/端系统通过服务提供商(ISP)接入因特网进行互联。 运行各种网络应用
主机/端系统通过通信链路和分组交换机连接到一起
通信链路: 传输媒介: 同轴电缆、铜线、光线、无线电 传输速率: 带宽
交换设备: 路由器 链路层交换机
协议是对因特网中消息的发送和接收进行控制。
因特网中最主要的协议统称为TCP/IP。
TCP: 传输控制协议IP: 网络协议,定义了在路由器端系统之间发送和接收的分组格式HTTP, Skype(Skype的通讯协议是不公开的)
因特网标准是指关于互联网相关的技术与方法论的技术规范,由互联网工程任务组(IETF)创建与发布。
RFC请求评论: 定义了TCP,IP,HTTP和SMTP等协议。其他组织: IEEE 802 LAN/MAN标准华委员会制定了以太网和无线WiFi的标准
服务描述(基础设施向分布式应用程序提供的服务)服务描述:因特网是为应用程序提供服务的基础设施 ...
数据库原理笔记C08 数据库系统的设计
8.1 数据库系统设计概述
需求分析阶段:需求收集和分析,得到数据字典和数据流图。
概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R图表示。
逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的关系模型/数据模型,对关系模型进行优化。
物理设计阶段:根据具体计算机系统(DBMS和硬件)的特点,为给定的数据库模型确定合理的存储结构和存取方法,并对物理结构进行评价。
数据库实施阶段:建立数据库,编制与调试应用程序,组织数据入库,程序试运行。
数据库运行和维护阶段:数据库应用系统投入运行后,需要进行备份和维护,对于出现的问题需要不断调整和修改,直到满足用户需求。
8.2 系统需求分析需求分析的必要性需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。
需求分析的方法
调查组织机构情况。了解组织部门的组成情况,各部门的职责等。
调查各部门的业务活动情况。包括了解各个部门输入和使用什么数据、如何加工处理这些数据、输出什么信息、输出到什么部门、输出结果的格式是什么等。
在熟悉业务活动的基础上,协助用户明确对新系统的各种 ...
数据库原理笔记C06 数据库保护
6.1 数据库完整性数据库的完整性是指保护数据库中数据的正确性、有效性和相容性,防止不合语义的数据进入数据库。
正确性:数据的合法性。如年龄属于数值型数字,不能含字母或特殊字符。
相容性:表示同一事实的两个数据应相同,不一致就是不相容。如一个学生不能有两个学号。
数据库的完整性是有DBMS的完整性子系统实现的。完整性子系统的主要功能主要有以下两点:
监督事务(特别是更新事务)的执行,并测试是否违反完整性约束。
若有违反现象,则采取恰当的动作。(拒绝/报告违反情况/改正错误)
完整性规则完整性规则用来检察数据库中的数据是否满足约束。主要由以下三个部分构成:
触发条件
约束条件
违约响应
在执行时间上可以分为立即执行约束和延迟执行约束。
立即执行约束:在执行用户事务过程中,某一条语句执行完成后,系统立即进行完整性约束条件检查。若违背立即执行约束,则拒接该操作。
延迟执行约束:在整个事务执行结束后再对约束条件进行完整性检查,结果正确才能提交。若违背延迟执行约束,又不知道是哪个事务的操作破坏了完整性,则只能拒接整个事务,把数据库恢复到该事务执行前的状态。
完整性约束
主键 ...
数据库原理笔记C03 关系模型
3.1 关系数据库的结构关系模型的数据结构的逻辑形势是一张二维表,这个二维表就叫做关系。
关系模型的基本术语
关系/表:一个关系就是一张二维表
元组/行:表中的一行就是一个元组
属性/列:表中的一列就是一个属性
值域:关系中的每个属性都有一个取值范围,这个取值范围称为属性的值域
分量:元组的某一个属性值就是一个分量
关系模式:关系模式是对关系的结构性描述
表的内容:指表的元组的集合
基数:关系中元组的个属叫做技术
度数/元数:关系中属性的个属叫做元数
关系数据库:是表或者关系的集合
空值(NULL):是指未知的活着尚未定义的属性值
关系的键
超键:在一个关系中,某一个属性或属性集合的值可唯一地标识元组。
候选键:一个属性或属性集合的值能唯一标识一个关系的元组而又不含有多余的属性。
主属性:构成候选键的诸属性。
非主属性:不包含在任意候选键中的属性。
全键:关系的全部属性构成关系的候选键。
主键:有时一个关系中有多个侯选键,此时可以选择一个作为插入,删除或检索元组的操作变量。被选用的候选键称为主键。每一个关系都有且只有一个主键。
外键:是指关系R中的属性A不是关系R的主键,但A是另一 ...
数据库原理笔记C07 关系数据库理论
7.1 关系模式规范化的必要性数据冗余一直是影响系统性能的大问题。“分解”是解决冗余的主要办法。(1) 冗余存储(2) 更新异常:重复信息的一个副本修改时,所有副本必须进行同样修改,否则造成不一致。(3) 插入异常:只有当一些信息事先已经存储在数据库中时,另一些信息才能存入到数据库中。(4) 删除异常:在删除某些信息时可能丢失其他信息。
7.2 函数依赖关系模式中的各个属性之间相互联系、相互制约的联系称为数据依赖。数据依赖一般分为函数依赖、多值依赖和连接依赖。
1. 函数依赖的定义设R(U)是属性集U上的关系模式。X,Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作X → Y。
2. 函数依赖的分类P217 ”如果 Y⊆X⊆U, 则 X→Y。“称为平凡依赖。否则称为非平凡依赖,若无特别声明,我们总是讨论非平凡依赖。
完全函数依赖:在关系模式R(U)中,X,Y是U的子集,X’是X的真子集,存在X→Y,但对每一个X’都有X’!→Y,则称Y完全函数依赖于X。
部 ...
数据库原理笔记C02 信息的三种世界与数据模型
2.1 信息的三种世界现实世界存在于人脑海之外的客观世界。包括各种事物、事物之间的相互联系以及事物的发生、发展和变化过程等。
房子、车子、河流..计算机无法直接处理,需要将这些事物的特性数据化。以人为例,常选用姓名、籍贯和性别等描述一个人的特征。
信息世界现实世界中的事物及其联系被分析、归纳、抽象,形成信息。对这些信息进行记录、整理、归类和格式化后,就构成了信息世界。
实体: 客观存在可以且可以相互区别的事物,同一类实体的集合称为实体集。属性: 用来描述实体某一方面的特性联系: 实体集之间的对应关系
机器世界信息世界的信息被整理后以数据的形式存储到计算机中,信息存储的地方就是机器世界。
记录: 实体的数据表示称为记录字段: 实体某个属性的数据表示称为字段,也称为数据项文件: 实体集的数据表示称为文件,它是同类记录的集合记录型: 实体型的数据表示称为记录型
客观对象的抽象过程—两步抽象
现实世界中的客观对象抽象为概念模型
将现实世界抽象为信息世界
把概念模型转换为某一数据库管理系统支持的数据模型。
将信息世界转换为机器世界
2.2 数据模型数据模型的内容 ...