数据链路层之经典以太网

1.取代总线型拓扑是环型拓扑,环型拓扑使用的设备是:

使用一种特殊的交换机叫做环网交换机,比较典型的是令牌环交换机,外观跟集线器差不多主要是为了取代Hub增加网络的质量。

一、在早期的网络环境中除了以太网(Ethernet),现在基本都是使用以太网。

二、还有令牌环网(Token  Ring)它使用的协议是令牌环协议。

三、还有光纤分部数据接口(FDDI这个FDDI协议在连接城域网(MAN)最早支持光纤的时候用得比较多,像运营商在当时就用得比较多。这个城域网并不是一款协议指的是这个网络正好能够覆盖一个城市,它依旧定义的是一个环型拓扑,只不过是一个双环就是两个环之间连接路径提供冗余。

环型网络的组成:

这个环网解决的最大问题是冲突问题,环网要使用环网交换机通过环网专用的线缆来连接PC, 这个环网是一个逻辑的环网。不是说连成一个环型网络。组成一个环的目的是为了让这个环中存在一个信令,这个信令能够永无止境的围绕这个环传递下去,这个信令就是令牌(Token令牌就是环网中的主机的发包许可证,它有且只有一个。环网的缺陷是带宽也很低只有10兆带宽,到了FDDI带宽就提升到百兆和百兆以上。

2.取代环形拓扑是星型拓扑有以下四点:

一、星型拓扑也是当前组网的主流拓扑,又使用以太网了。在当前网络中在不使用集线器了,用的是交换机,星型拓扑好在就是这交换机上。

二、在二层环境中使用Layer  2  Switch连接双绞线或光纤把主机连接入网这时的拓扑分类就叫星型拓扑。星型指的是中间一个点周围有若干个节点,节点连接到中心节点。最中间的点就是Switch。

三、在三层环境中使用路由器,路由器通过多根三层链路连接多台主机入网形成了也是星型拓扑。

四、星型拓扑和总线型拓扑使用的都是以太网协议。

3.星型拓扑之所以取代总线型拓扑和环型拓扑的原因是它解决了很多问题。比如:它没有冲突,收发数据的效率提高了,带宽高,转发效率高。

4.局域网(LAN)和广域网(WAN)指的是在一条链路上传输数据的一系列规则:

所谓局域网或是广域网它指的并不是线缆类型,指的是你在这个线缆上所定义的传输标准,在这个线缆上所定义的封装格式,它们定义的三种东西:

第一个是传输机制,

第二个是封装格式,

第三个是地址信息。

5.在局域网协议中有一个以太网协议中帧格式分为两种标准

一、以太网二标准

二、IEEE802.3标准。

两种标准的介绍:早期以太网是由三家公司开发的是一个私有协议。由于这个协议比较好,被后来的标准化组织IEEE(电子电气工程师协会)来重新订制改了一个叫法称为IEEE802.3标准来公有化。在这之前以太网已经被先公有化了称为Ethernet2。由于Ethernet2先被公有的,所以人们都支持Ethernet2标准。

后来做了一个协商在以太网环境中,这两种标准的数据都能存在。

数据层面的流量使用的是Ethernet2标准来封装。数据流量指PC正常上网产生的流量,听歌,聊扣扣,发送Telnet流量等。

控制层面的流量使用的是IEEE802.3标准来封装。控制流量有ARPCDPBPDUVTP等网络设备产生的用来做一些控制功能的一些报文基本都是802.3

两种帧封装格式的特点:

Ethernet2帧格式:

一、中间封装Data是数据包。其中MTU发送数据包最大1500字节说的也就是这个字段。

二、数据包前面3个字段是2层帧头分别是目的MAC、源MAC、帧类型。其中帧类型是用来描述这个数据帧的网络层使用的是什么协议。在网络中有一些二层设备收到的帧三层是什么协议,但二层设备不能读懂三层报头,所以就设置一个类型字段,它大于等于1536字节。

三、数据包后面FCS是帧尾。

四、在发送每一个帧之前在最前面包含一个8字节的导前码,用来描述这个帧是一个以太网二的帧。

IEEE802.3帧格式:

这个帧分为二个部分。前面的是802.3部分,后面是是802.2部分。后面802.2部分定义的是LLC(逻辑链路子层)的子报头。802.3的封装格式要么为802.3+802.2,要么为802.3+802.2+SNAP(SNAP是用来向后兼容Ethernet2)

前者Length(长度)描述的是去掉帧头帧尾之后中间封装的数据包一共有多少个字节。

后者LLC里面包含三个子字段长度固定3个字节分别为:

一、DSAP(目地服务接入点)

二、SSAP(源服务接入点)

三、control(控制字段)

DSAP和SSAP通过不同的取值让802.3兼容各种各样的操作系统。

SNAP里面包含二个子字段一共5个字节分别为:

一、先3个字节为Org Code(组织代码)。这个并没有什么用。

二、后2个字节为Type(类型)。这个字段跟Ethernet2的第3个字节是一模一样。

特点:

802.3的帧如果你要针对其它协议做兼容后面跟LLC就行。如果你想向后兼容Ethernet2就有一个SNAP(子网接入协议)的字段。这个字段是只有针对Ethernet2向后兼容的时候才会添加。

区分802.3Ethernet2就看第三个字段的值

如果这个值长度小于等于1500字节就是802.3,如果大于等于1536字节就是以太网二。

SNAP指的是一个标准,能让802.3的帧在封装的时候近乎跟以太网二的帧一样。

6.以太网规定了第三个信息通信时的封装标准,应用程序产生的流量在被发送之前要添加数据报头,数据报头里面要包含发送者和接收者信息。在以太网中发送者是SMAC,接收者是DMAC。以太网规定了有MAC地址做为标识符是有局限性的,主机的MAC只能在一个网络内标识主机自身。在不同的网络中必须通过更高级的地址来做为全局标识符就是三层地址。

MAC地址:一个人的身份证号,用来在一个以太网的网络内唯一标识一个主机。

IP地址:一个人的护照号,用来在不同网络中通行来标识主机,在TCP/IP环境中描述这股流量是由哪个主机的哪个接口发出的,是由哪个主机的哪个接口接收。通行时需要MAC地址和IP地址。我不知道你访问的主机是在网络内,还是不在这个网络内,所以两者都需要。

源目端口号:用来描述这股流量是由哪个源应用程序产生发给哪个目的应用程序,叫源目应用程序的描述信息。因为你的流量携带了源目端口,这个目的端口就会告诉你我希望你的哪个应用程序去处理这股流量,这个就称为流量封装。这样就避免接收者主机收到流量之后不知道交给哪个应用程序去处理。

只有在同一从此网络中的时候才会彼此关注对方的MAC地址,如果不在同一个网络,发送数据的时候目的MAC地址就不是接收者的MAC地址而是网关MAC地址。

网关(Gateway)PC上网网卡需配置三样东西,IP地址,掩码,网关。网关的IP地址通常跟自身的IP地址在同一个子网段内,原因是对于任何一个PC而言网关就是我访问其它网络的出口。当在网络内通信的时候访问的目的节点在同一个网络内不需要网关。当在访问外网的时候必须要有出口并且必须还在一个网络内,这个在同一个网络内的出口就叫网关。

网关的接口:早期是Router连接PC所在网络的接口,这就是该网络内所有节点的出口。当前是MLS所创建的关于你所在VLAN的SVI接口。有一个国际惯例网关的接口通常是这个网络中最后的一个可用IP地址。

例:A要访问B。源IP肯定是A的,目的IP肯定是B的。源MAC肯定是A的,目的MAC是路由器的网关接口的MAC地址。这时路由器收到数据帧查看目的MAC地址认为帧是发给我的才会去掉帧头帧尾,才能看到三层报头的目的IP地址查路由表来做转发。

7.提到交换机有两种

一是以太网的二层交换机。把二层交换机定义为接入层设备(Access Layer Device)定义第二是数据转发,转发双分为两种网络内转发和网络间转发。二层网络设备只支持网络内转发只关心一个网络内的数据流量,关心SMAC、DMAC。

二是以太网的多层交换机(MLS)。多交换机可以理解为一台路由器结合一台二层交换机我融合了两种设备的功能称为多层交换机,它看起来跟路由器相似但不能取代路由器的功能。

之所以不能取代路由器的原因是:

其中路由器一个功能是交换机取代不了的就是NAT/PAT。还有MPLS,像高端的QOS应用也是不支持的。路由器还有一些功能比如VPN,要远强于多层交换机,甚至是防火墙。

8.PC上网时的过程:

Pc的任何应用程序发送数据之前都要经过数据封装,先添加报头在添加源地址信息来描述流量是由谁发的是由谁收的,然后在添加源目端口号信息来描述流量是由哪个应用程序产生的是由哪个应用程序接收。

例如:

你直接输入www.baidu.com是不能上网的,它是一个域名。访问百度是这台PC使用我们的浏览器发送一股Http流量到运营商IDC机房里面的百度服务器,这个服务器是有IP地址的,要指定服务器的IP地址才能进行Web访问到百度。那怎样指定就是依赖DNS服务器,这个DNS服务器里面有一系列的A记录(记录的是域名到IP地址的映射)。所以Http的数据帧为Ethernet2|IPV4|TCP|HTTP|FCS

HTTP包含浏览器产生的数据,比如QQ打字内容就是数据流。

第一重封装报头TCP包含源目端口号有两个字段用来描述这股流量是由哪个应用程序产生,是由哪个应用程序去接收。

三、第二重报头添加的是源目地址信息这里指的源目IPV4地址,根据这个字段来描述流量是由哪个接口发出,是由哪个接口接收。最外层帧头Ethernet2包含SMAC和DMAC。

四、最后添加一个FCS帧校验序列通过散列HASH(哈希)算法判断在传输过程中是否发生了改变这个称为完整性检查。

9.MAC地址的介绍:

以太网出现一个标识符二层地址叫MAC地址(Media Access Control)叫介质访问控制地址。只有以太网的接口才有MAC地址有且只有一个。网卡(Node)和以太网接口都称为叫节点。MAC也叫烧录地址(BIA)就是任何一个以太网网卡的MAC地址都是固定的全球的唯一性,它是烧录到只读存储器(ROM)中存在以太网卡中,删除不掉,只能读取。MAC地址是找IANA购买,MAC地址有48位,6Byte,思科的MAC地址表示0000.0C00.0000。MAC地址前24位叫OUI组织唯一标识符就是用来标识场商的,后24位就是接口ID是场商可以自行分配的。

10.举例:voIP语音流量它的封装是Layer2|IPV4|UDP|rtp|voIP|FCS|其中rtp为实时传输协议,TCP和UDP是共用65535的端口但有些协议有些特殊DNS即能基于TCP的53又能基于UDP的53,LDP即能基于TCP的711又能基于UDP的711。

11.访问google服务器怎么访问?

先在地址栏里面输入www.google.com然后浏览器产生流量,那么流量的封装是Layer2|IPV4|TCP|HTTP|FCS,当你在访问一些服务器的知名应用时永远是目的端口为知名端口,源端口为随机端口。因为服务器的地址我们不知道但是PC是有DNS服务器它就要发送一个UDP的一个DNS请求,这个请求是基于UDP封装是Layer2|IPV4|UDP|DNS|FCS,DNS的A记录是指域名到IP地址的映射,google的DNS服务器为8.8.8.8,其中二层针头源MAC为主机MAC目的MAC为网关的MAC,查找ARP表有没有网关的MAC。就可以发送HTTP的报文了但在发送之前我要给服务器做一个三次握手然后总会经过边界路由器它给内网配置的是私有地址它要经过PAT,当我回包时边界路由器会反向查找NAT地址转换表最后把HTTP发回来,PC回应然后经过浏览器打开google的页面。

12.在正常情况下没有什么私有地址PAT,NAT的时候在端到端的通信时端到端的一致性就是三层地址,不管你报文在哪个段发源IP永远是发送者的IP,目的IP永远是接收者的IP,而我的二层地址却是每跨跃一跳都是会发生改变的,有可能我们这一跳是以太网连接但下一跳就有可能是帧中继,帧中继都用的不是以太网协议,不同的数据链路层协议所定义的二层地址是不一样的。

13.在CMD中arp -a查看MAC是不是网关真正的MAC,如果有问题就通过arp -s来手工的绑定arp表项。Ping对方IP后,如果对方跟本机在同一个网段内,可以通过arp -a显示对方的MAC地址;如果对方跟本机不在同一个网段内,arp -a显示网关的MAC地址。所以当你用公网IPPing公网的IP,之后用arp -a命令只能显示你网关的MAC地址。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Network Switch

你的鼓励是我分享的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值