目录
计算机网络背景
认识“协议”:
TCP/IP五层模型
网络传输基本流程
不在一个局域网进行通信
了解网络发展背景,对局域网/广域网的概念认识
了解网络协议意义,重点理解TCP/IP五层结构
学习网络传输的基本流程,理解封装和分用
计算机网络背景
世界上是先有的计算机,再有的网络
局域网LAN:计算机数量多了,通过交换机和路由器连接在一起
广域网WAN:将远隔千里的计算机都连接在一起
所谓的“局域网”和“广域网” 只是一个相对的概念。比如广域网,也可以看做是一个比较大的局域网。
认识“协议”:
“协议”是一种约定。本质的一种原因为了让通信更加高效。
网络协议初识
不同设备之间要进行通信,需要硬件标准网络协议的行业标准。
协议分层
操作系统要进行协议管理,是通过先描述,在组织的形式。
协议本质就是软件,软件是可以“分层”的
协议在设计的时候,就是被层状的划分的 !
为什么要划分为层状结构呢?一个是应用的场景复杂,通过层状结构进行功能解耦,便于人们去维护。
通信的复杂本质是和距离成正相关的!那么复杂体现在哪里呢?这就是协议栈要解决的问题
应用范畴:
0.如何处理数据 ---- 应用层
通信范畴:
1.丢包 ---- 传输层
2. 定位问题 ---- 网络层
3.解决下一跳主机的问题 ---- 数据链路层
4.硬件保证 ---- 物理层
以上是五层通信必须协议。除开物理层的其他四层称之为基于TCP/IP协议.
网络和系统的对应关系
OSI规定的是七层模型,实际实现的是五层
TCP/IP五层模型
物理层:
数据链路层:
网络层:
传输层:
应用层:
主机:传输层 -> 网络层
路由器:网络层 -> 物理层
交换机、网卡:数据链路层 -> 物理层
集线器:物理层
网络传输基本流程
同一个网段内的两台主机进行文件传输
TCP/IP通讯过程
局域网中两台主机是可以直接通信的,上面的每层都有自己的协议定制方案,每层协议都要有自己的协议报头,从上到下交付数据的时候,要添加报头,反之要去掉报头。
什么是协议报头呢?上层将数据交付给下层时,会给数据添加一个报头,报头就是数据传递后多出来的部分
封装的本质:添加报头
解包的本质:去掉报头
下面就是协议栈的结构
局域网是共有的,通信相当于是在一条数据线中发送了数据,这个数据是这个局域网内所有主机共享的,相当于是开了全麦喊话。一般我们是无法破坏的,但是如果我们绕过了数据链路层直接向以太网发射数据,就相当于发送了一堆无法解析的垃圾数据了。(很刑!!!)
局域网中标识主机的唯一性:MAC地址(计算机出厂的时候就已经有了,全球唯一)
如何查询MAC地址:命令行 ifconfig
不在一个局域网进行通信
MAC地址:源MAC和目标MAC是不断改变的,当前站和下一站的问题,用来标识数据链路层相连的节点。
IP地址:不在同一个局域网,无法使用MAC地址进行通信,就只能通过IP地址通信,源IP和目的IP是不会改变的,来源和目的的问题,标识不同主机的地址。
在使用TPC/IP协议的网络中,IP及其向上的协议,看到的报文都是一样的
1.报文是要被封装的,如何解包?
2.决定我们的有效载荷交付给上层的哪一个 协议的问题?
每一个协议都有考虑上面两个问题,每一个协议都要有一定的方式解决这两个公共的问题。