Java 计算机网络 复习

一、Http,Https

1.1 https定义

https是在应用层和传输层之间建立了安全套接字层(ssl/tls)

  • ssl 安全套接字层
  • tls 传输层安全协议

1.2 https作用

  • 内容加密 建立一个信息安全通道,来保证数据传输的安全
  • 身份认证 确定网站的真实性
  • 数据完整性 防止数据被第三方冒充或者篡改

1.3 http特点

  • 超文本传输协议,是一个应用层协议,负责把web服务器的文本数据传到本地浏览器
  • 他的特点是客户端向服务端发送请求,需要服务端的响应,请求结束后,会主动释放连接,从建立连接到释放连接的过程称为“一次连接”。
  • 基于tcp的协议
  • 建立在请求,响应模式之上。
  • 无状态的,他的每次请求都是独立的,之间不会产生联系,同一个客户端的多个请求他不会标识这些请求属于同一个客户端。对上个请求的数据不会关联到本次请求。

1.4 http和https的区别

  • http是无状态的,且通过http传输的数据都是明文状态,是不安全的,https采用基于密钥的加密算法会对传输的数据进行加密,所以是比较安全的。而https安全的原因是就是结合了 SSL/TLS 和 TCP 协议,SSL/TLS的核心是非对称加密。

  • https协议需要到CA申请证书。

  • http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

1.5 socket

  • 为了实现通信而建立的通信管道,实际上是客户端和服务器端的一个通信进程,通信的规则由协议规定。
  • 对tcp/ip进行封装,本身不是协议,而是一个调用接口。
  • 应用层与tcp/ip簇之间进行通信的中间软件抽象层

1.6 Http1.0和http1.1的区别

Http1.0中,客户端,每发送一次请求就需要建立一次连接,因此一个包含html内容,页面的图片就需要建立多次短期的连接,而在http1.1中,可以建立持续性的连接,并且可以重复使用,这样就可以使用这条连接进行多次的请求和响应。

1.7 http概念</font。

http全称超文本传输协议,他是应用层方面的协议,他定义了客户端与网站服务端之间进行图片,文本,文字,视频,音频等超文本数据传输的约定和规范。比如他约定了一些状态码等。

1.8 http字段

  • host:指定访问对象的域名,www.baidu.com,以及监听的端口号
  • Content-Length:服务端数据返回时数据的长度
  • Connection: Keep-Alive:保持长链接,该链接不会中断,直到客户端或者服务端主动断开连接。
  • Content-Type:服务端告诉客户端返回数据的类型
  • Accept: /:客户端告诉服务端可以接受的类型
  • Content-Encoding:服务端告诉客户端数据的压缩方法

1.9 状态码

1xx,2xx,3xx,4xx,5xx
301:资源永久重定向,302:资源临时重定向
401:需要认证
403:拒绝请求

二、7层网络模型

2.1 get和post的区别

  • 是否有副作用
  • get方式,获取一个资源,反复读取数据而不会对数据产生副作用,所以就可以用来作为缓存。
  • post方式:比如说form表单的sumbit键,点击提交,是会对数据产生负作用的,所以,不适合作为缓存,如果重新执行post请求,浏览器会给提示重新执行会产生副作用,
  • 携带的数据格式(仅限于浏览器发送请求的场景)
  • get请求如果要携带参数,需要一个url,因此他可以在地址栏输入参数,或者在<a>标签中携带参数。
  • 浏览器的post请求都来自表单提交每次提交,表单的数据被浏览器编码到http请求的body中。
  • Rest规范中

REST充分运用GET、POST、PUT和DELETE,约定了这4个接口分别获取、创建、替换和删除“资源”

  • 安全性
    get请求相对post请求来说稍微不安全,因为,get请求的参数在地址栏上,都不安全,是因为get和post数据通过http传输,http是明文协议,数据在网络中传播,本身就不安全。

  • 编码

get参数支持ascll码,post参数支持任意编码,(在http中的url和body中来说)

  • 发送
  • GET产生一个TCP数据包,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
  • POST产生两个TCP数据包,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据),header中是控制信息,data中才是数据

2.2 网络7层模型

参考:网络模型(7层网络模型)

  • 物理层
    将现实世界用0,1比特流表示
  • 数据链路层
    将收到的数据进行mac地址的封装与解封装

*网络层
将收到的数据进行ip地址的封装与解封装

  • 传输层
    将接受的数据进行分段和传输,到达目的地后进行重组。这一层的数据主要称为段

  • 会话层
    负责发起会话请求或者接收会话

  • 表示层
    对数据进行解释,加密与解密,压缩与解压缩

  • 应用层
    为一些终端应用提供服务,直接面向用户。

三、tcp,udp

3.1 tcp三次链接

  • syn=1,seq=x,客户端变成syn_sent
  • syn=1.seq=y,ack=x+1,服务端变成syn_recv,客户端变成established
  • ack=y+1,服务端变成established

3.2 四次挥手

  • fin=1,seq=x,客户端进入fin_wait1状态
  • ack=1,ack=u+1,服务端进入close-wait,客户端进入fin_wait2
  • fin=1,seq=y,客户端进入time_wait状态,服务端进入last_ack状态
  • ack=y+1,客户端进行关闭

在这里插入图片描述

3.3 TCP和UDP的区别

UDP&TCP的区别
tcp和Udp是传输层的协议,tcp提供的是面向链接,可靠的传输服务,即tcp在传输前会通过三次握手建立链接,传输完成后通过4次挥手断开连接,它通过提供一系列措施保证传输的可靠性比如:序列检测,超时重发,重复检测,流量控制,拥塞控制等技术。UDP是无连接的,不可靠的传输协议,只负责把数据包传输出去,不保证数据报的丢失,重复等问题,由于不需要建立连接的过程,所以速度非常快。

3.3.1 相同点

  • UDP协议和TCP协议都是传输层协议
  • TCP(Transmission Control Protocol,传输控制协议)提供的是M面向连接,可靠的字节流服务。即客户和服务器交换数据前,必须现在双方之间建立一个TCP连接,之后才能传输数据。并且提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
  • UDP(User Data Protocol,用户数据报协议)是一个简单的面向数据报的运输层协议。它不提供可靠性,只是把应用程序传给IP层的数据报发送出去,但是不能保证它们能到达目的地。由于UDP在传输数据报前不用再客户和服务器之间建立一个连接,且没有超时重发等机制,所以传输速度很快。

3.3.2 syn

SYN:同步序列编号(Synchronize Sequence Numbers)。是TCP/IP建立连接时使用的握手信号。在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN+ACK应答表示接收到了这个消息,最后客户机再以ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递。

1.4 ack

ACK (Acknowledge character)即是确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符。表示发来的数据已确认接收无误。
在TCP/IP协议中,如果接收方成功的接收到数据,那么会回复一个ACK数据。通常ACK信号有自己固定的格式,长度大小,由接收方回复给发送方。

四、VLAN

4.1、VLAN概念

VLAN(Virtual Local Area Network)的中文名为"虚拟局域网"。虚拟局域网(VLAN)是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。

4.2 优点

VLAN是一种比较新的技术,工作在OSI参考模型的第2层和第3层,一个VLAN就是一个广播域,VLAN之间的通信是通过第3层的路由器来完成的。与传统的局域网技术相比较,VLAN技术更加灵活.

  • 网络设备的移动、添加和修改的管理开销减少
  • 可以控制广播活动;
  • 可提高网络的安全性。在计算机网络中,一个二层网络可以被划分为多个不同的广播域,一个广播域对应了一个特定的用户组,默认情况下这些不同的广播域是相互隔离的。不同的广播域之间想要通信,需要通过一个或多个路由器。这样的一个广播域就称为VLAN。

五、DNS

5.1 DNS

应用层协议,将域名解析为IP地址

5.2 组成

  • 根域名服务器:知道到com,.net一级域名的顶级域名服务器地址
  • 顶级域名服务器:知道二级域名对应的权威域名服务器地址
  • 权威域名服务器:存储DNS与IP
  • 本地域名服务器:代理

在这里插入图片描述

5.3 DNS查询

  • 本地浏览器缓存
  • 路由器缓存
  • DNS服务器缓存

六、ARP,NET(网络层)

6.1 ARP

IP转为MAC地址

6.2 NET

内部网的地址转为外部网的地址,路由器管理子网IP,子网中的主机对服务器发送请求,经过路由器,最终是路由器的IP与服务的IP进行请求交换,然后将结果,由路由器转发给子网的主机。路由器的net转换表存储着转换信息。

七、IP协议

7.1 概念

网际协议,主要作用是屏蔽物理层网络的杀意,为上层提供IP数据报

7.2 特点

IP 协议提供无连接的、不可靠的、尽力的数据报投递服务。

  • 发送端随时发送数据,接收端不知道发送端什么时候发送
  • 不可靠:只进行传输,不保证数据的完整性
  • IP负责原IP地址到目的IP地址的传输,数据链路层负责每一段区间数据帧的传输

7.3 IP地址分类

A-E5类,分类号,网络号,主机号,分类号分别是1-5位,网络号是7的倍数,7-28,主机号是8的倍数。总共32位。
在这里插入图片描述

  • 再将主机号划分为主机号+子网号

7.3.1 子网掩码

子网掩码将某个IP地址划分为网络地址和主机地址。
A类的子网掩码:255.0.0.0
B…255.255.0.0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值