kakaの博客

你所热爱的,就是你的生活

0%

计算机网络

  1. TCP位于传输层,IP位于网络层,UPD应用:DNS媒体流传输游戏开发网络管理

  2. TCP/IP有几层?为什么没有物理层

    应用层、传输层、网络层、链路层

    TCP/IP模型是网络互联的模型,是已构建好的局域网的互联模型,而只有在局域网的构建中才需要考虑物理层

  3. 计算机网络中哪里存在流量控制

    • 数据链路层、传输层、应用层中,通过停止等待、选择重传、滑动窗口机制实现流量控制
  4. 交换机、路由器和集线器三者的区别

    集线器是物理层设备,用于将多个设备连接在一起形成局域网,其功能是将收到的信号广播给所有连接的设备。不能隔离广播域和冲突域。

    交换机是数据链路层设备,他负责将网络层提供的数据包分割成帧,并对每一帧添加头部和尾部,以便在物理层进行传输。交换机的主要功能是根据目标MAC地址对数据帧进行转发。可以隔离冲突域,不能隔离广播域。

    路由器是网络层设备,它通过查询路由表上的IP地址,将数据包转发到合适的接口。既可以隔离冲突域,又可以隔离广播域。

  5. IP地址和MAC地址的区别

    IP地址是一个32位或128位的二进制数,通常用点分十进制来表示。MAC地址是一个48位二进制数,通常用冒号分隔的十六进制数表示。

    IP地址是用于在广域网上唯一标识一台设备,是逻辑地址,MAC地址用于在局域网上唯一标识一台设备,是物理地址。

    在分组转发时,MAC地址进入新的网络会发生变化,IP地址基本不变。

  6. 什么是MAC地址,为什么要有MAC地址

    MAC地址是用于标识网络设备的唯一地址。

    MAC地址起到记录下一跳信息的作用。

    在网络通信中,MAC地址被用于识别网络上的设备,以便将数据包正确地发送到目标设备。

  7. 网路层设备有哪些

    路由器、网关、路由交换机、NAT设备、防火墙

  8. TCP和UDP的区别

    可靠性:TCP是面向连接的,是可靠的数据传输。UDP是无连接的,不保证数据可靠性。

    流量控制:TCP通过滑动窗口协议实现流量控制,UDP没有流量控制机制。

    拥塞控制:TCP通过拥塞窗口协议实现拥塞控制,UDP没有拥塞控制机制。

    适用场景:TCP使用与对数据传输可靠性高的应用场景,如文件传输、电子邮件等。UDP适用于对传输速度和实时性要求较高的应用场景,如实时音频传输、在线游戏等。

  9. TCP依靠什么实现可靠传输

  • 确认和重传机制:TCP使用序列号和确认号来跟踪发送和接收的数据,接收方会发送一个确认消息来确认已经收到的数据,如果发送方没有收到确认信号会进行重传,直到收到为止。

  • 流量控制:TCP使用窗口机制来限制对方发送数据的速率,接收方告诉发送方最大的窗口以免数据丢失。

  • 拥塞控制:当网络拥塞时,TCP减少发送数据的速率。

  • 数据校验和机制:TCP使用校验和机制保证数据的完整性和可靠性。

  1. 内部网关协议有哪些
  • RIP:小规模,基于距离向量的路由协议,收敛速度较慢,应用层协议,交换自己的路由表

  • OSPF:基于链路状态的路由协议,可实现快速收敛和负载平衡,网络层协议,交换与自己相连接的所有路由器的链路状态

阅读全文 »

简介

Spring Security是Spring家族中的一个安全管理框架。相比于另外一个安全框架Shiro,他提供更丰富的功能,社区资源也比Shiro丰富。

一般来说中大型的项目都是使用SpringSecurity来做安全框架。小项目用Shiro的比较多,相比于SpringSecurity,Shiro的上手更加简单。

一般Web应用需要进行认证和授权。

认证:验证当前访问系统的是不是本系统的用户,并且要具体确认是哪个用户。

阅读全文 »

流程

img

api统一管理

在api/index.js中编写登录请求

所有的请求都写在这个文件中,以方便api统一管理

阅读全文 »

vuex

介绍

vuex是专门管理vue.js应用程序中状态的一个插件。他的作用是将应用中的所有状态放在一起集中管理。

img

结构

阅读全文 »

安装axios

1
npm install --save axios

对axios进行二次封装

新建文件夹api,新建文件request.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import axios from "axios"

//利用axios对象的方法create,去创建一个axios实例
const requests = axios.create({
//配置对象
//基础路径,发请求的时候,路径中会出现api
baseURL: "/api",
//请求超时的时间
timeout: 5000,
});

//请求拦截器:在发请求之前,请求拦截器可以检测到,可以在请求发出去之前做一些事情
requests.interceptors.request.use((config)=>{
//config: 配置对象,对象里有一个属性很重要,headers请求头
return config;
});

//响应拦截器
requests.interceptors.response.use((res)=>{
//成功的回调函数:服务器响应数据回来之后,响应拦截器可以检测到,可以做一些事情
return res;
},(error)=>{
//响应失败的回调函数
return Promise.reject(new Error('failure'))
});

export default requests;//对外暴露requests
阅读全文 »