网络初识必知会

局域网:把一些设备通过交换机/路由器连接起来

广域网:把更多的局域网也相互连接,当网络规模足够大的

交换机:组网过程中的重要设备!

路由器:组网过程中的重要设备!

IP地址:描述一个主机在互联网上的具体位置

端口号:区分一个主机上的应用程序

协议:(非常核心的概念)

协议就是约定,发送方约定了他发数据是啥样的格式,接收方也得理解这个格式,两边对上号,才能够进行正确的通信!

协议:在传输之前就先约定好发送方和接收方都约定好每组代表的啥意思!!

在网络通信中,需要约定的协议,其实是非常非常复杂的!!

面对复杂的环境,就需要复杂的协议!但是,太复杂了也不好!!

当一个协议太复杂了,就可以拆分成多个协议,当协议拆分出很多的时候,存在有些小的协议作用或者定位是类似的,那么,就可以针对这些小的协议进行“分类”,同时在针对这些不同的类别,进行分层,相当于约定层级和层级之间的调用关系,要求上层协议调用下层协议,下层协议给上层协议提供支持,不能跨层调用!!

公司经常有一定的层级关系:

网络初识必知会_第1张图片

跨层级进行交互,职场上一般是非常禁忌的!!

协议分成的好处:

  1. 分成之后,就可以做到层次之间,耦合程度比较低,上层协议不必了解下层的细节,下层也不必了解上层的细节!
  2. 方便的对某一层的协议进行替换!

真实的网络协议具体是怎么分成的呢??

OSI七层网络模型(仅仅存在于教科书上的!)

TCP/IP五层网络模型(当下最广泛使用的网络模型)

下列内容要求熟练背诵,计算机网络中最基础,最核心的概念!!

应用层,传输层,网络层,数据链路层,物理层

  1. 应用层,关注传过来的数据要干啥用!!(同一个人,针对同一个东西,拿来的用途也是不一样的)
  2. 传输层:不考虑中间路径,只关注起点和终点。如:我和淘宝卖家,都不关心,中间是怎么传输的(快递),只关心起点和中点,你乐意咋传输就咋传输,只要规定时间送到即可!!
  3. 网络层:主要负责两个遥远的节点之间的路线规划

    收货地是西安,发货地是上海

    上海到西安,中间有很多条路可以走~

    在众多的路径中,找一个合适的~

    上海《——》西安

    上海《——》南京《——》西安

    上海《——》苏州《——》徐州《——》西安

  4. 数据链路层:主要关注相邻节点之间的传输

    上海——》南京:火车??

    南京——》西安:卡车??

    网络上相邻节点,就是通过网线/光纤/无线直接连接的设备!!

  5. 物理层:网络通信的基础设施!!网线,光纤,网络接口…………

网络上的高速公路!!

那么,经过上述这样的分成之后,就可以让程序员同一时刻只关注一个子问题!!


在上述的五层中,只有应用层才真正的关注数据的用途!!

应用层:对咱们程序员写的应用程序,下面的四层测试操作系统内部一级封装好的!!因此,咱们写代码进行网络编程,主要工作还是围绕应用层展开的!!

目前:程序员改不了系统内核,也改不了硬件,则目前高校的课堂重点围绕应用层和传输层站卡!!

在协议分层的背景下,数据如何通过网络传输的呢??(封装&分用

发送方发送数据,要把数据从上到下,依次交给对应的层次的协议,进行封装,接收方收到数据,要把数据从上午到下,依次交给对应的层次的协议进行解析,解析的过程就叫分用!!

总的来说:

  1. 应用层:应用程序,拿到数据怎么用??:应用程序
  2. 传输层:负责关注传输过程中起点和终点:系统内核封装
  3. 网络层:负责整个传输过程中的路径规划
  4. 数据链路层:负责两个相邻节点之间的数据传输:硬件+驱动
  5. 物理层:硬件设备,基础设施

你可能感兴趣的:(java要笑着学,操作系统哪些事?,网络,智能路由器,java,开发语言)