计算机网络小结

计算机网络分层概述以及功能作用

不同之前的OSI分层,现在主流的分层都是偏向于TCP/IP的四层分层(五层的话就是最后的网络接口层给替换),OSI参考模型的抽象能力高,概念划分清除,但是过于复杂,不好理解。即由下面按四层协议的层次来组成计算机网络

1.应用层

2.传输层

3.网络层

4.网络接口层

具体的功能作用

这下面的功能我是将第四层的网络接口层拆成了物理层和数据链路层来写的。

  • 物理层:中继器和集线器;网卡(概括为了两器一卡)
  • 数据链路层:为网络层提供可靠的数据传输,基本数据为帧;以太网协议,设备是网桥和交换机
  • 网络层:对子网间的数据包进行路由选择,还可以实现拥塞控制,网络互连等功能;IP协议;ICMP
    协议-internet control message protocol因特网控制报文协议;ARP协议(将IP地址获取物理地址的):地址解析协议;路由器是重要设备。
    • 路由选择和分组转发
    • 异构网络互联
    • 拥塞控制:若所有接点都来不及接受分组,而要丢弃大量分组的话,网络就除于拥塞状态,因此要采用一定措施来缓解这种拥塞
  • 传输层:将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题;
    主要用到的是TCP协议、UDP协议;网关是重要设备
  • 应用层:为操作系统或网络应用程序提供访问网络服务的接口。

对应层所用的协议

应用层

这层的主要协议的话也是大家比较常见而且有一定了解的

  1. SMTP:对邮件收发的一个协议,控制信件的中转方式。
  2. HTTPS:具有安全性的文本传输控制协议。
  3. HTTP:超文本传输协议,规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送数据的协议。
  4. FTP:文件传输协议,因特网中使用最广泛的文件传输协议。

传输层

对于应用层就是TCP和UDP协议-用来建立端到端的链接,这一层的数据单位是数据报

TCP三次握手:可靠连接,先建立连接(大数据包,数据要求安全)
a. 发送请求,seq = x ,同步信号SYN
b. 回请求,ack = x + 1; 双向连接,同步请求SYN seq = y
c. 最后回建立请求,ack = y +1;

为什么握手不是两次的原因

两次会造成资源浪费,当失效的请求再次到达,server以为是有效的,就建立了连接,就会造成浪费,使用三次主要是为了防止server端一直等待。

四次挥手,全双工的连接,
a. 发送FIN请求断开
b. 接受FIN ,发送ack,表示已经接受到了
c. 再次发送FIN 请求断开连接
d. 最后发送ACK,最终断开连接

为什么要四次挥手?

确保数据能够完成传输,收到FIN的时候,仅仅是代表对方没有数据发给你,你自己还没整理完数据发送给对方,所以这里还是需要你要确保自己整理好收拾好行李再发过去
UDP:不可靠连接,不需建立连接(数据不安全,小数据包)

网络层

路由的主要工作区域,用到的协议

1. ARP协议-地址解析协议
a. 已知对方IP去获取对方的MAC地址,用于同一子网内的寻址
b. 应用在局域网内
2. RARP-反向地址解析协议
a. 已知对端的MAC地址,获取其IP地址 。
3. ICMP协议
a. 检查网络通路

对于网络层就是Ip\ICMP\ARP\RARP协议-用来寻址和路由选择的。这一层的数据单位是数据包。

网络接口层

包括了物理层和数据链路层

物理层:规定了通信设备的机械、电气的、功能的和过程的特性,用来简历和拆除物理链路连接。在一层的数据单位是比特。

数据链路层:在物理层之上,建立相邻接点之间的数据链路,通过差错控制提供数据帧在信道上无差错的传输。这一层的数据单位是帧。

通信协议学习记录


前言

局域网(Local Area Network,LAN)是最常见到的,也是应用最多的一种计算机网络,大到各行各业的企业内部网络,小到千家万户的家庭网络都属于局域网(仅指内部网络部分)。我们常说的校园网通常也是一种局域网

广域网(Wide Area Network,WAN)是规模最大的一种计算机网络,分布的地理范围可以非常广。

image.png

这篇讲下通信协议,现在是想讲下ssh与ssl

发送端是把通信连接建立指令和用户应用数据从上层向下层传输的,直到最低的物理层;而接收端是把通信连接建立指令和用户应用数据从下层(从最低的物理层开始)向上层传输的,直到与发送端发起通信的对等层。

下面图是计算机网络互连体系结构图OSI/RM:包括了广域网中不同局域网间通信的功能层次(上面五层),也给出了局域网内部通信所必需的两个层次(最下面两层)。

image.png

OSI/RM低四层(从物理层到传输层)定义了如何进行端到端的数据传输,也就是定义了如何通过网卡、物理电缆、交换机和路由器进行数据传输;而高三层(从会话层到应用层)定义了终端系统的应用程序和用户如何彼此通信,也即定义了如何重建从发送方到目的方的应用程序数据流。更多的是把OSI/RM的七层结构分成低三层和高四层的,低三层负责创建网络通信所需的网络连接(面向网络),属于“通信子网”部分,高四层具体负责端到端的用户数据通信(面向用户),属于“资源子网”部分。

image.png

ssh(安全外壳协议)

SSH仅仅是一协议标准,其具体的实现有很多,既有开源实现的OpenSSH,也有商业实现方案。使用范围最广泛的当然是开源实现OpenSSH。其目的是为了实现安全远程登录以及其它安全网络服务。ssh属于上述计算机网络体系中的应用层的。

ssh root@IP