网络篇网络理论基础入门
Posted Suk-god
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络篇网络理论基础入门相关的知识,希望对你有一定的参考价值。
文章目录
1、网络发展背景
1、为什么要存在网络呢?
本质上就是计算机数量由少变多,计算机由单台完成某个功能编程多台协作完成某个功能的情况。进而演变出来的数据传输的解决方案.
2、网络的分类
2、网络协议的初识
协议:约定沟通双方传递信息的格式
网络完成的事情是:将数据从A主机的a进程传递到B主机的b进程
网络协议:约定网络主机在传输数据时候的格式
结论:
1、网络数据 = 协议部分 + 应用层数据
在网络中的数据不仅仅只有数据本身,还需要有协议的内容,协议的内容帮助要传输的数据正确的在网络当中传输到对方的主机当中
2、基于操作系统和库函数写出来的程序,都是应用层程序,产生的数据,称之为应用层数据
3、协议部分,在Linux操作系统中也是采用描述的手法,描述本质上就是一个结构体。换句话说,协议部分的内容就是就结构体数据
3、网络协议的分层
分类
OSI分层模型--------网络理论模型
从底层到顶层依次是:
物理层、数据链路层、网络层、传输层、会话层、表示层。应用层。
具体如下图所示:
TCP/IP分层模型-----工业中采用的网络模型
从底层到顶层分别是:
物理层、数据链路层、网络层、传输层、应用层
为什么要有网络分层?
对于这个问题,我们可以从两个方面来说:
1、从软件的层面来考虑
将网络的功能解耦开来,有负责应用层数据、有负责端与端之间的传输,有负责路由等等!
2、从实现层面讲
分层当中的各个协议完成各自的协议功能即可,只需要将不同层之间相互通信的接口设计匹配就行。至于每一层的内部实现什么功能,如何实现,这些都可以单独考虑,也就便于实现。
4、网络数据的封装与复用
重点:理解数据在网络中的传出流程(这里只列出宏观角度的传递过程)
结论:
1、应用层数据经过网络传输的时候,需要经过网络协议栈的封装,到达对端之后,需要经过网络协议栈的分用
2、网络协议栈封装的时候,是增加了协议的内容。目的是为了在网络当中能够正确的传输
5、IP地址和MAC地址
IP地址
1、分类
目前有两个版本的IP地址,分别是IPv4和IPv6版本的IP地址
2、本质
IPv4版本的IP地址,本质上是一个无符号的32位整数,范围是[0,232-1]
3、作用
在网络中标识一台主机
4、表示形式
一般使用点分十进制的方式表示IPv4版本的IP地址
将4字节按照1字节使用“.”的方式进行分割。因此点分十进制的方式,每一个数字的范围是[0.28-1] 也即 [0,255]。
5、两点注意
①一个IP地址只能被一台机器占用
②一台机器可以占有多个IP地址
MAC地址
1、本质
长度为48比特位即6字节,一般使用16进制数据加上冒号的方式来表示,
例如(08:89:24:fc:19:02)
2、作用
①标识具体的某一块物理网卡设备,网卡设备在出厂的时候,都会打上全球独一无二的MAC地址
②MAC地址用来识别数据链路层中相连的节点
使用ifconfig
命令查看自己的Linux机器的网卡信息,win机器使用ipconfig /all
Linux:
关于网络的基础扫盲到这里就告一段落了。我们下篇再见~~
以上是关于网络篇网络理论基础入门的主要内容,如果未能解决你的问题,请参考以下文章
对比学习资料《深度学习入门:基于Python的理论与实现》+《深度学习原理与实践》+《深度学习理论与实战基础篇》电子资料