OSI七层网络模型



OSI七层网络模型

互联网建立目的

网络建立的目的就是为了数据交互(通信)


OSI七层模型

OSI七层网络模型_服务端

1.物理层

中继器,集线器,双绞线

每层运行常见物理设备

OSI七层网络模型_子网掩码_02

以太网封装过程

OSI七层网络模型_mac地址_03

2.数据链路层

数据链路层由来

单纯的电信号0和1没有任何意义,必须规定电信号多少一组,每组什么意思

功能:定义了电信号的分组方式


以太网协议

  • 1)要有一块网卡,网卡上要有一个独一无二的地址(mac地址)
  • 2)一组电信号构成一个数据包,叫做帧
  • 3)每一数据帧被分为两部分:1.报头(head)2.数据(data)

报头(head)固定18个字节 ,分三部分

  • 发送者(原地址):6个字节
  • 接受者(目标地址):6个字节
  • 数据类型:6个字节

数据(data)

最短46个字节,最长1500个字节


数据包的具体内容

head长度+data长度=最短64字节,最长1518字节,超过最大限制就分片发送


MAC地址(物理地址)

每块网卡出厂时都被烧制上一个世界唯一的mac地址,长度为48位2进制,通常由12位16进制数表示(前6位是厂商编号,后6位是流水线号)

[root@m01 ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.61 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::20c:29ff:fec1:2a78 prefixlen 64 scopeid 0x20<link>
Mac地址 ether 00:0c:29:c1:2a:78 txqueuelen 1000 (Ethernet)
RX packets 1385 bytes 112072 (109.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 969 bytes 64037 (62.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


计算机通信,基本靠吼

广播

让所有的其他计算机都能接受到你的数据包,其他计算机要根据报头(head)来判断,这个数据是不是发送给自己


广播风暴

3.网络层

IP协议

规定网络地址的协议叫ip协议,它定义的地址称之为ip地址,广泛采用的v4版本即ipv4,它规定网络地址由32位2进制表示


IP地址范围:0.0.0.0-255.255.255.255

一个ip地址通常写成四段十进制数,例:172.16.10.1


一个IP地址分为两部分(点分十进制)

  • 1)网络位:标识子网
  • 2)主机位:标识主机

在不在同一个网段,取决于子网掩码+IP地址

# IP和子网掩码之间的运算
AND(按位与运算)符号:& 1&1=1 1&0=1 0&0=0
&&:逻辑运算

已知IP地址172.16.10.1和172.16.10.2的子网掩码都是255.255.255.0,请问它们是否在同一个子网络?两者与子网掩码分别进行AND运算

# IP转换成二进制
172.16.10.1
10101100.00010000.00001010.00000001
# 子网掩码转换成二进制
255255.255.255.0
11111111.11111111.11111111.00000000
# 子网掩码+IP
10101100.00010000.00001010.00000000
#AND运算得网络地址结果
172.16.10.0

172.16.10.2:10101100.00010000.00001010.000000010
255255.255.255.0:11111111.11111111.11111111.00000000
AND运算得网络地址结果:10101100.00010000.00001010.000000001->172.16.10.0
结果都是172.16.10.0,因此它们在同一个子网络


IP协议的作用

  • 为每一台计算机分配IP地址
  • 确定ip地址是否在一个网段

以太网头+报头+数据

arp协议:地址映射协议(广播的方式发送数据包,获取目标主机的mac地址)ip地址绑定在Mac地址上


4.传输层

传输层的功能:建立端口到端口的通信

端口范围:0-65535,系统占用的端口:0-1023

Tcp协议

可靠传输,TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割


三次握手:客户端连接服务端

  • SYN(客户端发送连接请求给服务端syn)
  • ACK+SYN(服务端收到请求ack,跟客户端确认是否连接syn)
  • ACK(客户端确认连请求连接ack)

OSI七层网络模型_客户端_04

四次挥手:客户端断开服务端

  • 客户端发送请求断开连接
  • 服务端确认客户端是否要断开连接
  • 服务端发送断开连接信息
  • 客户端确认断开连接

OSI七层网络模型_子网掩码_05

udp协议

不可靠传输,”报头”部分一共只有8个字节,总长度不超过65535字节,正好放进一个IP数据包


端口映射

5.会话层

会话层三大功能

  • 1)建立会话:A、B两台网络设备之间要通信,要建立一条会话供他们使用,在建立会话的过程中也会有身份验证,权限鉴定等环节
  • 2)保持会话:通信会话建立后,通信双方开始传递数据,当数据传递完成后,OSI会话层不一定会立刻将两者这条通信会话断开,它会根据应用程序和应用层的设置对该会话进行维护,在会话维持期间两者可以随时使用这条会话传输局
  • 3)断开会话:当应用程序或应用层规定的超时时间到期后,OSI会话层才会释放这条会话。或者A、B重启、关机、手动执行断开连接的操作时,OSI会话层也会将A、B之间的会话断开。

6.表示层

表示层三大功能

1)内码转换

2)压缩与解压缩

3)加密与解密

7.应用层

应用层功能:规定应用程序的数据格式