zoukankan      html  css  js  c++  java
  • 《图解 TCP / IP 》学习笔记(三)—— 数据链路

    1. 数据链路的作用

    数据链路层的协议定义了通过通信媒介互联的设备之间传输的规范。

    通信媒介包括双绞线电缆、同轴电缆、光纤、电波以及红外线等介质。




    2. 数据链路相关技术

    MAC地址

    第1位 第2位 第3~24位 第25~48位
    单播地址(0)/ 多播地址(1) 全局地址(0)/ 本地地址(1) 厂商识别码 厂商内识别码

    厂商识别码由IEEE管理并保证各厂家之间不重复。厂商内识别码由厂商管理并保证产品之间不重复。

    MAC地址用于识别数据链路中互连的节点。长48比特。一般用十六进制数表示。按照每8bit转换对应值,并替换了前后顺序。

    十六进制MAC地址格式:XX:XX:XX:XX:XX:XX

    MAC地址也不总是唯一。实际上,即使MAC地址相同,只要不是属于同一个数据链路就不会出现问题。


    共享介质型网络

    从通信介质使用方法上看,网络分为共享介质型和非共享介质型。

    共享介质型网络是指由多个设备共享一个通信介质的一种网络。最早的以太网和FDDI(Fiber Distrbuted Data Interface:光纤分布式数据接口)就是介质共享型网络。在此之下,设备之间使用同一个载波信道进行发送和接收。为此,基本上采用半双工通信方式,并有必要对介质进行访问控制。

    共享介质型网络有两种介质访问控制方式:争用方式和令牌传递方式。

    争用方式

    指争夺获取数据传输的权力。也叫CSMA(载波监听多路访问)。鉴于多个站同时发送帧,会产生冲突现象的情况,出现了改良CSMA的另一种方式——CSMA/CD方式。该方式要求没个站提前检查冲突,一旦发生冲突,尽早释放信道。

    令牌传递方式

    指沿着令牌环发送一种叫做"令牌"的特殊报文。只有获得令牌的站才能发送数据。该方式的缺点是:网络不拥堵的情况下,数据链路的利用率也达不到100%。为此,衍生了令牌释放、令牌追加等方式。

    非共享介质网络

    指不共享介质,是对介质采取专用的一种传输控制方式。在此之下,网络中的每个站直连交换机,由交换机负责转发数据帧。由于发射端和接收端不共享通信介质,所以很多情况下使用全双工通信方式。

    半双工是指只发送或者只接收的通信方式。而全双工允许在同一时间既发送数据又接收数据。


    根据MAC地址转发

    以太网交换机就是持有多个端口的网桥。他们根据数据链路层中每个帧的目标MAC地址,决定从哪个网络接口发送数据。这时所参考的、用以记录发送数据接口的表就叫做转发表(Forwarding Table)。

    转发表通过自学过程自动生成。


    环路检测技术

    通过网桥连接网络时,若出现环路,数据帧会在环路中陷入死循环,进而导致网络瘫痪。为解决该问题,生成树与源路由两种方式出现了。

    生成树方式

    该方法由IEEE802.1D定义。每个网桥必须在每1~10秒内相互交换BPDU(Bridge Protocol Data Unit)包,从而判断哪些端口使用,以便消除环路。

    源路由法

    该方式可判断发送数据的源地址是通过哪个网桥实现传输的,并将帧写入RIF(Routing Information Field)。网桥则根据这个RIF信息发送帧给目标地址。

    VLAN

    同一个交换机按照端口区分了多个网段,从而区分了广播数据传播的范围、减少了网络负载并提高了网络的安全性。

    将硬件线路的改变转换为网络结构的改变,减少了维护的成本。




    3. 以太网

    以太网已成为最具兼容性与未来发展性的一种数据链路。最早命名为Ethernet。之后由IEEE802.3委员会将其规范化。但是由于这两者之间对以太网帧的格式定义有所不同,所以,IEEE802.3所规范的以太网又被称为802.3以太网

    以太网连接形式

    以太网普及之初,一般采用多台终端使用同一根电缆的共享介质型连接方式。而现在,随着互联设备的处理能力以及传输速度的提高,一般都采用终端与交换机之间独占电缆的方式实现以太网通信。

    以太网的分类

    因通信电缆的不同及通信速度的差异,衍生出众多不同的以太网类型。10BASE中的"10"、10GBASE中的"10G"分别指10Mbps、10Gbps的传输速度。后面追加的"5"、"2"、"T"、"F"等表示的是传输介质。
    a55D5q.png

    以太网帧格式

    以太网帧前端为前导码(premble),表示一个以太网帧的开始,是对端网卡能够确保与其同步的标志。前导码末尾是一个叫做SFD(Start Frame Delimiter)的域,值为11.之后是以太网帧的本体。前导码和SFD合起来共占用8个字节。
    a550Vs.png

    以太网帧本体的前端是以太网的首部,共占14字节。分别是6个字节的目标MAC地址、6个字节的源MAC地址和2个字节的上层协议类型。之后为数据帧。帧尾是一个叫做FCS(Frame Check Sequence,帧检验序列)的4个字节。其他的以太网帧体格式稍有不同(如IEEE802.3以太网)。
    a55dbj.png
    a55arQ.png
    a55sP0.png

    类型通常和数据一起发送,他包含用以标识协议类型的编号。主要协议如下。
    a55Ban.png




    4. 无线通信

    无线通信通常使用电磁波、红外线、激光等方式进行传播数据。一般在室内的局域网范围内组成的较高速的连接称为无线局域网。

    无线通信的种类

    无线通信依据通信距离可分为如下类型。
    a5Lsjx.png

    IEEE802.11

    IEEE802.11定义了无线LAN协议中物理层与数据链路层的一部分(MAC层)。IEEE802.11这个编号可以指众多标准的统称,有时也指无线lAN的一种通信方式。作为一种通信方式,IEEE802.11在物理层上使用电磁波或红外线。

    IEEE802.11比较
    a5Lrg1.png

    IEEE802.11b和IEEE802.11g

    这两个是2.4GHz频段中的无线局域网标准。最大传输速度分别为11Mbps和54Mbps。通信距离可达到30~50m。他们与IEEE802.11相似,在介质访问层使用CSMA/CA方式,以基站作为中介进行通信。

    IEEE802.11a

    在物理层使用5GHz频段。最大速度可达到54Mbps。优点是不使用2.4GHz频段(微波炉使用的频段),不易受到干扰。

    IEEE802.11n

    在IEEE802.11g和IEEE802.11a的基础上,采用同步多条天线的MIMO(Multiple-Input Multiple-Output,多入多出技术),实现高速无线通信。

    蓝牙

    与IEEE802.11b/g相似,蓝牙使用2.4GHz频率无线电波。

    WiMAX(Worldwide Interoperability for Microware Access)

    使用微波在企业或家庭实现无线通信。如DSL和FTTH一样,是实现无线网络关键步骤的一种方式。

    ZigBee

    主要应用于家电的远程控制,是一种短距离、低功耗的无线通信技术。最多允许65536个终端之间的互连通信。




    5. PPP(Point-to-Point Protocol)

    定义

    指点对点,即1对1连接计算机的协议。PPP相当于位于OSI参考模型第二层的数据链路层,属于纯粹的数据链路层,与物理层没有任何关系。即仅有PPP无法实现通信,还需要有物理层的支持。

    PPP可以使用电话线或ISDN、专线、ATM线路。近些年人们更多的是在用ADSL或有线电视通过PPPoE(PPP over Ethernet)实现互联网的接入。PPPoE是在以太网中加入PPP帧进行传输的一种方式。


    LCP与NCP

    在PPP的主要功能中包括两个协议

    • 不依赖上层的LCP协议(Link Control Protocol)
    • 依赖上层的NCP协议(Network Control Protocol)

    如果上层为IP,此时的NCP也叫做IPCP(IP Control Protocol)

    LCP主要负责建立和断开连接、设置最大接收单元(MRU,Maximum Recieve Unit)、设置验证协议(PAP或CHAP)以及设置是否进行通信质量的监控。
    而IPCP负责IP地址设置以及是否进行TCP/IP首部压缩等设置。

    通过PPP连接时,通常需要进行用户名密码的验证,并对通信两端进行双方向的验证。其验证协议有两种,分别为:
    PAP(Password Authentication Protocol)
    CHAP(Challenge Handshake Authentication Protocol)
    PAP是PPP连接建立时,通过两次握手进行用户名和密码验证,密码以明文方式传输。一般用于安全性要求并不高的环境。
    CHAP则使用一次性密码OTP(One Time Password),可以有效防止窃听。




    PPP的帧格式

    PPP数据帧格式如下,其中标志码用来区分每个帧。这与HDLC(High Level Data Link Control Procedure,高级数据链路控制)相似,因为PPP时基于HDLC制定的协议。HDLC就是在每个帧前后分别加一个8位字节 01111110 来区分帧。这个8位字节叫做标志码。
    aoPVVs.png


    PPPoE

    部分互联网接入服务商在以太网上利用PPPoE提供PPP功能。在此之中,通信线路由以太网模拟。PPPoE数据帧结构如下。
    aoPAbj.png

    单纯的以太网没有验证功能,也没有建立和断开连接的处理,因此无法按时计费。采用PPPoE管理以太网连接,就可以利用PPP的验证功能使各家ISP可以有效管理终端用户的使用。



    我是这耀眼的瞬间,是划过天边的刹那火焰。
  • 相关阅读:
    Dot Net WinForm 控件开发 (七) 为属性提下拉式属性编辑器
    WinForm 程序的界面多语言切换
    c#遍历HashTable
    Dot Net WinForm 控件开发 (三) 自定义类型的属性需要自定义类型转换器
    Dot Net WinForm 控件开发 (六) 为属性提供弹出式编辑对话框
    Dot Net WinForm 控件开发 (一) 写一个最简单的控件
    Dot Net WinForm 控件开发 (四) 设置属性的默认值
    Dot Net WinForm 控件开发 (二) 给控件来点描述信息
    Dot Net WinForm 控件开发 (八) 调试控件的设计时行为
    Dot Net WinForm 控件开发 (五) 复杂属性的子属性
  • 原文地址:https://www.cnblogs.com/Rane/p/13460923.html
Copyright © 2011-2022 走看看