网络分层的理解

osi网络7层的介绍我这边直接引用一片博客 添加链接描述

我这边暂时将其分为5层:在这里插入图片描述

  • 应用层(http、ssh、smtp等)
  • 传输控制层
    tcp(面向连接的双工可靠协议,三次握手,四次分手) udp
    (三次握手->数据传输->四次分手) 成为一个最小粒度,不可被分割

查看当前机器上在传输控制层建立的连接

netstat -tunlp (only servers)
netstat -napt (servers and established)
  • 网络层
    下一跳机制:tcp/ip(点分十进制)协议主要通过下一跳机制去连接互联网上的其它机器。通过route -n可以查看linux下的路由表在这里插入图片描述
    我们将需要访问的ip和子网掩码(Genmask)做位与运算得到的结果和路由表中的Destination(目标地址)做比较,首先ifconfig查看当前机器的ip为192.168.79.130在这里插入图片描述
    如果我们要在当前机器ping 192.168.79.131这台机器,首先计算机会将ip192.168.79.131和路由表中的Genmask逐个做与运算。255.255.255.0和192.168.79.131与运算的结果为192.168.79.0,我们发现这个值刚好是路由表中第三行的Destination的值,这种情况就会走第三条路由规则,而这种情况就是我们经常说的“同一个网段”,可以直接访问,不需要下一跳。
    如果我们ping www.baidu.com 在这里插入图片描述
    同样百度的ip 183.232.231.174同样会跟Genmask做与运算,与255.255.255.0与运算的结果为183.232.231.0,在Destination中未找到符合的。与255.255.0.0与运算的结果为183.232.0.0,也未在Destination中找到符合的。与0.0.0.0与运算的结果为0.0.0.0,符合值为0.0.0.0的Destination,这种情况下会走Gateway(网关) 192.168.79.2,而这个Gateway地址往往是我们家庭网络中的路由器ip。我们访问百度的数据包会通过路由器出去,这个时候就涉及到下一跳机制了。我们的数据包里面至少包含如下三种:(1) 目标主机的ip(我们这边指的是百度的ip) (2)目标服务的端口号(数据包到达目标服务器之后要根据具体的端口号去访问具体的服务) (3)下一跳机器网卡的mac地址(mac地址会在每一次的跳动之后更换,直到跳到目标服务器的网卡上) 我们这边的跳动就涉及到链路层了

  • 链路层

arp -a  dns

我们可以看到Gateway(192.168.79.2)的mac地址为00:50:56:f6:3b:7e
在这里插入图片描述
arp -a dns先解析域名到ip地址的映射,然后arp协议可以解析ip地址和网卡地址的映射 mac地址用于在网络中唯一表示一个网卡(几个网卡就有几个mac地址

  • 物理层
    结论:tcp/ip协议是基于下一跳的机制,ip是端点间的,mac地址是节点间的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值