【计网基础】OSI七层模型及各层相关协议

  • OSI: open system interconnection 开放式系统互联参考模型
    在这里插入图片描述

1. 物理层

  • 通过物理连接组网,传送比特流0和1
  • 两个不同局域网(移动,联通)通信,需要ISP互联网服务供应商提供的物理连接

2. 数据链路层:

  • 作用:根据以太网协议将一组电信号组装成数据包,称为“帧”,并控制传输
  • 有两部分:标头head+数据data “标头”包含数据包的一些说明项,比如发送者、接受者、数据类型等等
  • MAC地址 :即网卡地址,48位的二进制,通常用12个16进制位数表示,前六个表厂商,后6个表流水号
    • 定位数据包的路径,如发送者+接受者
  • 广播方式:发送者把数据包发送给局域网内所有PC,让PC根据MAC地址自动匹配;
    一台计算机向本局域网内的所有电脑均发送相同的数据包,其他计算机收到这个数据包之后,会读取这个数据包的“标头”,找到其中接收方(目标方)的MAC地址,然后与自身的MAC地址进行比对,如果两者相同,说明就是要发给自己的,然后接受这个包并做出进一步的处理,否则丢弃这个包。
    • 发送媒介:分组交换机/网络交换机
    • 广播是在发送者所在的局域网内广播的,如果两台计算机没有在一个子网内,就无法广播
  • 网络交换机:扩展网络的机器,为子网提供更多的接口,以连接更多的pc

3. 网络层

建立主机-主机的连接
因此我们必须找到一种方法,区分哪些MAC地址属于同一个子网。如果是同一个子网就采用广播的形式,如果不是,则采用“路由”的方式(后面会讲)发送——这就导致了网络层的出现,他的作用是引入一套新的地址,使我们能够区分哪些计算机属于同一个子网,这个套机制就叫做“网络地址”,也就是“IP地址”。

  • 新的地址模式:IP地址/网络地址,可以区分哪些PC在同一局域网内
  • IP地址分类
    • IPv4:32个二进制,4字节*8位,前24位表网络,同一子网下,必须相同,后8位表主机
      255 = 11111111
    • IPv6:128个二进制,8字节*16位
  • 子网掩码:ip and 255.255.255.0,判断是否在同一子网下

路由

通过网络把数据从源地址到目的地址;引导分组传送,经过一些中间节点后,到达目的地(原地址和目标地址是在两个不同的子网中)

  • 实现方式:定义一条路径,经过因特网把网络包发到目的地,不指定完全路径,只指定两个网关之间的路径段
  • 路由器:连接两个或多个网络实现路由的机器,可看作配有多个网卡的专用电脑,让网卡接入不同的网络中
  • 网关:网络层使用的路由器,通常指路由器的IP (个人感觉应该是一种概念,即在网络层连接两个子网的概念,并不存在实体,真正实现路由功能还是得靠路由器)
  • 步骤:
    1. A:发送地址 B:接收地址
    2. 若在同一局域网内,通过广播方式可找到
    3. 若不在:
    4. 首先将网关添加给路由器/主机地址,通过交换机的广播方式发给主机
    5. A的主机将数据包传送给B所在的主机,再由主机根据MAC广播给B
      注:IP包不断被路由封装和拆开(添加和删除地址)
  • ARP协议:作用:将局域网内IP和MAC地址对应
    • 介于数据链路层和网络层之间
    • 仅限于IPV4,IPV6用Neighbor Discovery Protocol替代

网络交换机

是一个扩大网络的器材,能为子网中提供更多的连接端口,以便连接更多的电脑。交换机与路由器的区别:

  • 工作层次不同
    交换机主要工作在数据链路层(第二层)
    路由器工作在网络层(第三层)。
    - 转发依据不同
    交换机转发所依据的对象是:MAC地址。(物理地址)
    路由转发所依据的对象是:IP地址。(网络地址)
    - 主要功能不同
    交换机主要用于组建局域网,连接同属于一个(广播域)子网的所有设备,负责子网内部通信(广播)。
    路由主要功能是将由交换机组好的局域网相互连接起来,或者将他们接入Internet。
    交换机能做的,路由都能做。
    交换机不能分割广播域(子网),路由可以。
    路由还可以提供防火墙的功能。
    路由配置比交换机复杂。

ARP协议

IP地址与MAC地址的对应是通过ARP协议传播到局域网的每个主机和路由。每一台主机或路由中都有一个ARP cache,用以存储局域网内IP地址和MAC地址如何对应。
ARP协议(ARP介于数据链路层和网络层之间,ARP包需要包裹在一个帧中)的工作方式如下:主机发出一个ARP包,该ARP包中包含有自己的IP地址和MAC地址。通过ARP包,主机以广播的形式询问局域网上所有的主机和路由:我是IP地址xxxx,我的MAC地址是xxxx,有人知道199.165.146.4的MAC地址吗?拥有该IP地址的主机会回复发出请求的主机:哦,我知道,这个IP地址属于我的一个NIC(网卡),它的MAC地址是xxxxxx。由于发送ARP请求的主机采取的是广播形式,并附带有自己的IP地址和MAC地址,其他的主机和路由会同时检查自己的ARP cache,如果不符合,则更新自己的ARP cache。
这样,经过几次ARP请求之后,ARP cache会达到稳定。如果局域网上设备发生变动,ARP重复上面过程。ARP协议只用于IPv4。IPv6使用Neighbor Discovery Protocol来替代ARP的功能。

4. 传输层:

建立端口-端口的连接

端口号

  • 0-65535 (16个二进制)- 同一台主机上许多程序(进程)都需要用到网络,需要判断是哪个端口
    当一个数据包从网上发送过来的时候,我们需要一个参数来区分,他到底是提供哪个进程使用的——这个参数就叫做“端口号”,他其实就是每一个使用网卡的程序的编号。每个数据包发送到主机特定的端口,所以不同的程序就能取到自己想要的数据包。
  • 0-1023被系统占用,应用程序随机选取
  • Http:80
  • 代理服务:8080
  • 指定IP包具体给哪个进程;另外,一个进程可能与多个计算机连接,会有多个端口

Socket

进程间通信 需要双方IP、端口号、通信采用的协议栈
进程间通信分为主机内部(终端内部)进程间通信和跨主机进程间通信(Socket通信)
Unix系统把主机+端口,叫做"套接字"(socket)

  • 格式:无符号整型变量,用来表示一个通信进程
  • 本质是编程接口API,是对TCP/IP协议的封装

TCP/UDP

  • TCP/UDP:在数据包标头加上端口号
    • TCP:复杂、稳定,有包遗失会重发
    • UDPO:简单、不稳定、不能确定对方是否成功接受

5. 应用层

规定应用程序的数据格式,如ftp、网页(http)、smtp(邮件)的数据格式,直接面向用户

参考文献

OSI 7层模型和TCP/IP 4层模型
计算机网络漫谈:OSI七层模型与TCP/IP四层(参考)模型

  • 5
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值