对学习的内容做一个小结,包括sql语句,create table,主码、外码的定义、RIP动态路由、静态配置路由、网络安全相关设备、网络拓扑结构、家庭组网、企业组网、无线路由器等、子网划分、软件工程中程序流图和控制流图画法、用例图中泛化继承、include、extend的用法区分等。
目录
一、回顾sql语句
sql
create database my_dab
delete database my_dab
create table student(
sno smallint
sname char(20)
ssex char(20)
sdept char(20)
PRIMARY KET(sno)
FOREIGN KEY sdept REFERENCE dept(dept_name)
)
update student set sno=100 where sname="zhangsan"
update student set sdept="jsj" where sdept in (select dept_name from dept where dept_no="001")
delete from student where sno=003
delete from student where sdept in (select dept_name from dept where dept_no="001")
create table new_tab_jsj(
sno smallint
sname char(20)
sdept_no smallint
sdept char(20)
PRIMARY KEY(sno,sdept_no)
FOREIGN KEY sno REFERENCE student(sno)
FOREIGN KEY sdept_no REFERENCE dept(dept_no)
)
insert into new_tab_jsj
values(007, "lily", 002, "jsj")
select sno,sname into new_tab_jsj from student where sdept="jsj"
创建表
主码
表的主码只能有一个,但主码可以是单列,也可以是复合主码,形式如下:
(1)对于单个主码,可以在属性后标识
sql
create table student(
sno char(20) primary key not null
)
create table student(
sno char(20) not null
primary key(sno)
)
(2)主码是联合主码时,需要在底部写
sql
create table sc(
sno char(20) not null
cno char(20) not null
primary key(sno,cno)
)
对主码相关的操作语句
sql
alter table student
drop primary key;
alter table student
add primary key(sno);
外码
创建表时,使用reference指定表的外码
sql
// 情况一:外码分别来自不同的两张表,分开写
create table sc(
sno char(20) not null
cno char(20) not null
primary key(sno,cno)
// 错误,两个外码不是复合外码
foreign key(sno,cno) references student(sno), course(cno)
)
// 正确
create table sc(
sno char(20) not null
cno char(20) not null
primary key(sno,cno)
foreign key (sno) references student(sno)
foreign key(cno) references course(cno)
)
// 情况二:表A的主码是复合主码,表B的外码是表A的主码,则表B的外码是复合外码
create table department(
dno char(20) not null
dname char(20) not null
per_num int
primary key(dno, dname)
)
create table test(
name char(20) not null
id int not null
primary key(id)
test_no char(20) not null
test_name char(20) not null
foreign key(test_no, test_name) references department(dno,dname)
)
// 引用表的字段和参照外码所在表中的字段可以不同(test_no, test_name) (dno, dname),但类型和顺序要一致
更新-删除表
这里在多表查询时,最好用in嵌套查询,而不用where连接查询。因为更新和删除的都是一张表啦。

二、计算机网络-RIP问题
RIP是动态路由协议,路由表之间通过交换路由信息自动更新路由表,路由表中不断更新从源网络到达目的网络的跳数,使得跳数最小。RIP中最大跳数为15,当超过15时,认为目的网络不可达,不适应大型网络。(跳数认为是源网络到目的网络所经过的路由器数量)
表的结构为:目的网络 下一跳IP 跳数
(1)RIP路由表初始化时刻:路由表中只有直连网络的路由信息,下一跳IP为离目的网络最近的路由器IP,一般为该路由器的出入口IP,跳数为1.
(2)在交换信息后,路由表不断更新。对于R1和R2来说,没有比各自直连网络更近的了,因此直连网络信息不必更新。非直连网络的下一跳IP为相邻路由器入口IP,跳数在原来基础上+1.
【注】RIP中直连网络的跳数认为是1,下一跳IP即为到达该目的网络需要经过的路由器的IP,也就是自身了。但在静态路由中,直连网络认为无下一跳IP,只有出入接口,距离是0.
【例题1】RIP初始时刻的路由表如下(这里跳数是0),但在题目中一般认为是1

三、RIP接收到路由表的更新原则
优缺点:动态路由根据路由协议(OSPF、RIP)动态生成路由表,路由表直接交换信息动态更新;不需要耗费大量人力;灵活性较好,能自动适应拓扑结构变化;能实现负载均衡和故障恢复。但对系统资源消耗较高;安全性较低。
原则:(1)A收到C来的路由表,先将收到的表更新:跳数+1,下一跳全部设为C
(2)对比A的原表和更新后的表C',下一跳一致时,原表A无条件更新;下一跳不一致时,只有C'中跳数少于原表A,才更新,否则不更新。
eg:

四、静态配置路由
优点:由人工手动配置,一旦配置,除非管理员手动删除,否则路由信息不会自动更新;对系统资源消耗少;安全性较好,所有的路由都是预先定好的;但不够灵活,无法自动适应拓扑结构的变化;维护工作量太大,只适用于小型拓扑结构
原则:
(1)直连网络无下一跳
(2)目的主机的IP是唯一的,子网掩码255.255.255.255
(3)Internet网络0.0.0.0 子网掩码也是0.0.0.0

五、网络拓扑结构回顾
必看,网络设备及功能详细说明
https://cloud.tencent.com/developer/article/2473336
https://blog.csdn.net/m0_73589512/article/details/154732137?spm=1001.2014.3001.5506
(1)网络安全相关
互联网 → [抗DDoS] → [FW] → [IPS] → [核心] → [区域FW] → [WAF] → [服务器]
↑ ↑ ↑ ↑ ↑
(大流量) (访问控制)(实时阻断) (内部隔离)(Web防护)
防火墙:内外网的第一道屏障,对内外网进行安全隔离,FW可以防御低层攻击。和路由器的前后不区分。

IPS:入侵防御系统,用于监测流量,对异常流量进行监控处理,阻断非法访问 ,比如丢弃报文。串联部署在防火墙之后,所有流量必须经过IPS,串联部署在主干道路上。

IDS:入侵故障检测,用于被动检测, 当监测到异常时,发出告警,无法阻断 网络非法访问**。** 一般旁路部署在核心交换机旁边。也可以作为主机型(串)在服务器上,这是用到的是HIDS,在主机内部安装,用于监控流量。

上网行为管理:串联或者旁路,对流量监控,部署在主机服务器附近

VPN:一般串联部署在主干路上,用于建立加密通道,安全访问,在分公司和出差人员访问总公司时一般需要使用VPN。
堡垒机:串联在服务器上,保护主机(考的少)
DDos:串联部署在防火墙之前,负责流量清洗(大量的)、流量限速
WAF:应用防火墙,一般串联在web服务器旁,主要作用是保护web服务器,是第一道应用防线,对进入web服务器的所有流量进行监控和过滤。
-
SQL注入防护
-
XSS跨站脚本防护
-
CSRF防护
-
Web漏洞防护
-
API安全防护
【1透明代理模式】所有的流量都要经过WAF,无法实现负载均衡,对WAF性能要求较高。

【2反向代理模式】将服务器地址映射在WAF上,client端访问的是WAF,流量必经WAF,串联部署,可以实现负载均衡

【3路由代理模式】
与1的区别是,1工作在网桥模式,3工作在路由模式
【4镜像模式】
此时WAF旁路部署在主机服务器旁,对流量和访问进行监测和告警(IDS),不进行阻断,适用于监测服务器的访问情况。用于收集和了解服务器被访问和被攻击的信息。

(2)传输介质相关
双绞线:短距离传输,距离短,通信速率低,价格便宜,一般连接PC和接入交换机,一个教室里面,POE交换机和AP之间,必须使用Cat5e双绞线,支持供电功能。
集线器:集中连线PC机,在组件经济型局域网中采用
多模光纤:500米以内使用多模光纤,距离长,通信速率高,价格较贵,能满足千兆数据传输
单模光纤:大于500米时用,两栋楼之间。
(3)网络设备
核心交换机(三层交换机):具备路由功能,在图中如果没有找到路由器,但图标又很像交换机时,则它就是核心层交换机!!可以进行路由选择,数据的高速传输。如下设备1 是核心层交换机,而非路由器。

汇聚交换机:将接入的交换机汇聚起来,配置一些路由策略,减轻核心交换机的压力
接入交换机:将PC机集中接入
无线AP:接在接入交换机上,将有线信号转为无线信号的设备,供无线设备连接使用
无线AC:一般旁挂在核心交换机(汇聚)旁,集中管理无线AP设备,负责流量控制和实现负载均衡
无线路由器:在家庭中使用,具备路由、AP、交换机等功能,可以实现NAT地址转换、提供VLAN接口供设备连接、将有线信号转为无线信号,用于无线设备连接上网。
(4)网络拓扑
家庭内组网(有线设备+无线设备)
【例题1】

分析:
有线设备+无线设备:必须有无线AP,有线设备有交换机连
只有一个有线网络接入点+多个设备:设备需要具有NAT地址转换功能,这样多个设备才能共用一个公网IP,因此必须有路由器。因此路由器-交换机-AP需要
低成本局域网:无线路由器将路由功能、交换机功能、无线AP功能集成在一起。【无线路由器只有4个LAN口,因此当有线设备过多时,就不能使用无线路由器直连有线设备了,需要加个交换机,后面有讲到】

【配置步骤】:
1)物理连接:将光猫的LAN口通过光纤连接到无线路由器的WAN口;将无线路由器的LAN口通过光纤连接到台式机的接口
2)配置:将台式机设置为DHCP,动态获取IP模式.
登录路由器管理网站,将路由器WAN口配置为动态获取IP模式,对家庭网络名称、密码、加密方式进行配置,将设置路由器内网IP,开启DHCP模式
3)连接:台式机通过网线连接到无线路由器可以自动上网,手机、PAD通过输入密码进行联网。
【补充说明无线路由器+光调制解调器】
无线路由器:家庭内部使用无线路由器设备,具有路由功能,可以将NAT地址转换,多个设备可以共享一个公网IP;具备交换机功能,可以提供LAN口供有线设备连接;具备无线AP功能,将有线信号转为无线信号,用于无线设备,如手机、PAD联网使用。
分为家用无线路由器(基本没有AC功能)和企业级无线路由器(配有AC功能)
AC:当>=2台AP设备,覆盖不同的区域时,就需要AC统一管理和控制AP
光调制解调器:光猫,电信/移动公司拉过来的一根线,提供接入点(一般是一个)给家庭使用。家庭设备不够用,所以光猫第一步连路由器,进行NAT地址转换,可以将私网IP转为公网IP。
【!例题2】
场景 :一个小型办公室 ,有5台台式机(需有线连接)、3台笔记本(无线)、2台网络打印机。运营商只提供了一个有线网络接口 。老板要求网络稳定,且笔记本能在办公室任何位置连接。
打印机:需要PC访问打印机,因此要处于同一个交换机下。
集线器:要求经济型网络,才使用集线器,一般不使用。
小型办公室:(<50,使用单层或两层交换机,别搞大的拓扑结构;>50台再搞三层交换机)
有线设备+无线设备:方案一 无线路由器------PC+无线信号;方案二:有线路由器------交换机------PC+AP。标准在于:无线路由器只有4个LAN口,若有线设备>4,则需要加一台交换机;家庭一般用无线路由器就够了,企业办公室用企业级无线路由器,这样有AC功能,可以控制和管理多个AP。方案二:适用于大型的(主机数>50)
无线路由器有AP功能,不需要再连AP(要实现办公室全覆盖,就必须每个区域都有AP,企业级路由器可以实现AP较大范围,也可以实现AC控制)

大型企业组网(有线设备+无线设备)
企业级使用经典的结构,路由器-交换机-无线AP,其中交换机连接有线设备,无线AP用于给手机、PAD联网使用。
POE交换机:具有POE供电功能的接入层交换机,下面接无线AP、网络摄像头等需要供电的
接入交换机:没有供电功能,下面接有线PC,一般不直接接AP。
下图中无线AP接在POE上,懒得改了。

加上打印机如下:打印机需要和PC属于同一层级,方便PC访问打印机。(不要集线器)

学校-学院组网
(5)网络设备的识别
千兆:单模光纤
百兆:多模光纤
核心交换机:具有一定的路由功能,在图中有时候用核心交换机代替了路由器(不太标准,但不错)

无线AP:网络符号,AP一般和POE交换机相连,交换机旁边挂着AC;也有可能多个AP连接AC上。AC上面连着交换机。
汇聚层交换机:连接着服务器,拓扑图中可以路由器下面直接连着汇聚层交换机,没有核心交换机。

六、子网划分
原则:占几位子网位;占几位主机位
网络地址按照子网000/001/010/011等顺序确定,其实先确定第一个就好,后续每个子网都在原来基础上+2^n大小。
比如202.100.44.88/24,若划分4个子网,则子网占2位,即
202.100.44. 0100 1110,这里原先的24位网络号不动,后面划出来的两位子网位取00,主机位也取全0,得到第一个网络地址202.100.44.0/26
(1)等长子网划分
(2)不等长子网划分:默认按照主机从大到小顺序
(3)不等长子网划分+要求按照子网顺序划分:这时候可能主机数出现25,30,45这种变长度,则题目一定是设计好的数字,否则不可能划分成功。先按部就班划分,2个子网位,第一个子网给25,第二个子网给30;等划分到第三个45这个突然变大的主机数时,将第三个和第四个子网合并给它用就够了。
七、软件工程程序流程图-控制流图
在画程序流程图时,符合条件&& ||拆成两个条件画。
将流程图中每个步骤用数字+节点代替,画出控制流图,一般分支汇合处会有一个无意义的会和节点;主分支上也可以将两个节点合并,比如:开始①------输入abd②------int i=1③,则流图中②和③可以合并。
计算独立路径:属于白盒测试,区域数+1,P+1,流线-顶点+2
【例题1】


【例题2】

八、软件工程用例图-泛化继承/include/extend
泛化:继承关系,用户或功能用例均可以泛化,描述一般是:A包含B和C,A可以是B或者C。这里理解:B C均是A的一种特例,均属于A这个大类,不是新的功能。(爸/妈均属于父母这个大类)
include:一个大的功能包含多个步骤,可能是多个步骤之一。(维护信息包括添加、修改、删除);某项必须做的事,比如修改删除都需要先登录,只有先登录后才能删除修改;一般描述是只有xx才能;xx需要xx;
extend:对于一个功能基础上,拓展出来的新的功能,你可以选择,也可以不选,它是新的功能。比如查完成绩后可以打印成绩;或者在特殊情况下 的一个可选功能;登录失败时可以选择忘记密码。(打印成绩不属于查询成绩的大类!忘记密码也不属于登录失败的一个大类!)一般描述是在xxx时,可以xxx