1 / 87

第四章

第四章. 数据链路层. 设计、制作、讲授:谭献海 EMAIL : xhtan@home.swjtu.edu.cn. 4.5 链路协议. LAN: Ethernet WAN: HDLC Internet: SLIP/PPP 无线 LAN----802.11. 数据链路协议负责 : 帧格式定义 流量控制 差错控制 链路管理 ( 建立、维护、 释放) 信道访问控制 (LAN). 链路 点 — 点链路 ( HDLC,SLIP/PPP ) 共享链路 (Ethernet, 802.11). WAN 链路协议簇.

mauli
Download Presentation

第四章

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第四章 数据链路层 设计、制作、讲授:谭献海 EMAIL:xhtan@home.swjtu.edu.cn

  2. 4.5 链路协议 • LAN: Ethernet • WAN: HDLC • Internet: SLIP/PPP • 无线LAN----802.11 • 数据链路协议负责: • 帧格式定义 • 流量控制 • 差错控制 • 链路管理(建立、维护、 释放) • 信道访问控制(LAN) • 链路 • 点—点链路(HDLC,SLIP/PPP) • 共享链路(Ethernet, 802.11)

  3. WAN链路协议簇 • Synchronous Data Link Control (SDLC): IBM • High-Level Data Link Control (HDLC): ISO • Link Access Procedure (LAP): CCITT • Link Access Procedure-Balanced (LAPB): X.25 • Frame Relay(与X.25相似,但进行了精简) • Link Access Procedure for the D channel (LAPD): ISDN • Link Access Procedure for modems (LAPM): V.42 • Advanced Data Communications Control Procedures (ADCCP):ANSI OSI 参考模型 广域网协议标准 X.25 PLP 网络层 Frame Relay SLIP/PPP SDLC LAPB 数据链路层 HDLC MAC子层 EIA/TIA-232 SMDS EIA/TIA-449 X.21 物理层 V.24 V.35 bis HSSI G.703 EIA530

  4. HDLC站点类型 • Primary station:主站 • 负责整个链路的控制(如系统的初始、流控、差错恢复等) • 主站依次向次站发送命令,接收来自次站的响应(Poling:轮询)。 • Secondary station:从(次)站 • 在主站的控制下工作,是个被动的角色 • 它接收来自主站的命令并作出响应。 • Combined station:组合站 • 同时具备主站和从站的功能 • 组合站既发送命令和响应,也接收来自另一个组合站的命令与响应。

  5. HDLC链路的两种基本配置 平衡配置 HDLC: ABM 命令(B) 命令(A) 复合站A 响应(B) 响应(A) 复合站B 非平衡配置 HDLC: NRM 命令(B) 主站 A 主站 B 命令(B) 从站B 响应(B) 响应(B) 由一个主站和一个或多个从站构成。主站控制从站,实现链路管理。信道可以是点对点链路,也可以是多点共享的链路。可支持全双工或半双工通信。 命令(C) 从站C 主站A 响应(C) 由两个组合站点对点地互连而成。两个站点地位均等,负有同等的链路控制责任,可以相互发送未经2请求的数据帧。信道可支持全双工或半双工通信。

  6. HDLC传输模式(1) Normal Response Mode (NRM) ----正常响应模式 • 适用于点 — 点式和多点式两种非平衡配置 • 主站依次向从站发出轮询命令 • 从站收到命令后,才能获得许可,传输响应帧 • 主计算机作为主站 (控制中心) • 终端作从站 (RTU:远程执行单元)

  7. HDLC 传输模式(2) • Asynchronous Balanced Mode (ABM) • ----异步平衡模式 • 适用于通信双方都是组合站的平衡配置 • 各组合站无须对方许可就可以平等地启动发送过程。 • 没有轮询开销 • 应用较广

  8. HDLC传输(3) • Asynchronous Response Mode (ARM) • ----异步响应模式 • 适用于点 — 点式非平衡配置 • 从站可以随时发起传输,不必等待主站的探询 • 主站负责整个链路的控制,如初始化、流控、差错恢复等 • 应用较少

  9. 标志值:01111110 帧定界 接收器通过搜索标志序列来同步 透明传输 (0比特插入技术)以避免由于数据中出现 01111110而引起混乱 数据中每出现5个连续的1,自动插入一个0 HDLC 的帧结构 比特 8 8 8 可变 16 8 标志 F 地址 A 控制 C 信息 Info 帧检验序列 FCS 标志 F FCS 检验区间 透明传输区间

  10. 发送端在 5 个连 1 之后 填入 0 比特再发送出去 0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 0 填入 0 比特 在接收端将 5 个连 1 之后 的 0 比特删除,恢复原样 0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 0 在此位置删除填入的 0 比特 零比特插入技术 数据中某一段比特组合恰好 出现和 F 字段一样的情况 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 会被误认为是 F 字段

  11. 比特填充—接收端处理方式

  12. 地址域 作用:指明发送或接收帧的从站 一般使用8比特长度 可扩展到多个字节(7比特) 每个8位组的LSB 指明是最后一个8位组 (1) 或不是 (0) 全1 (11111111) 为广播地址

  13. 控制域 • 作用:区分不同的帧类型 • Information(信息帧)- 传输用户 (上一层)的数据。 • 流控和错误控制等通过信息帧捎带应答(piggybacked ) • Supervisory(监控帧)-流控和错误控制(当不使用捎带应答时使用) • Unnumbered(无编号帧)- 辅助链路控制 • 控制域的前1或2比特是帧类型 信息帧(I) 监控帧(S) 无编号帧(U)

  14. 第2-4比特N(S):发送序号。 第6-8比特N(R):一个站所期望收到对方发来的帧的序号,有确认的意思,确认[N(R)-1]及其以前的帧都正确无误地收妥了。 第5比特:询问/终止(P/F)标志 主站或复合站询问时,P置1,表示询问; 从站或复合站发完最后一帧时,F置1,表示终止。 控制字段: 1 2 3 4 5 6 7 8 0 N(S) P/F N( R) 信息帧:I-frame 作用:用于传送有效信息或数据

  15. 控制域可扩展 (3比特序号) (7比特序号)

  16. 流量控制 S-frame 作用:用于差错控制和流量控制 监督帧都没有信息字段,所以不需要发送序号N(s) GO-BACK-N 选择重传

  17. 监督帧类型 S = 00 RR(Receive Ready), 准备接收下一帧N(R), 确认N(R)-1及以前的各帧 01 RNR(Receive Not Ready), 暂停接收N(R)帧, 确认N(R)-1及以前的各帧 10 REJ(Reject), 否认自N(R)开始的帧 确认N(R)-1及以前的各帧 11 SREJ (Selective Reject), 仅否认N(R)帧 确认N(R)-1及以前的各帧 连续 ARQ 选择重传ARQ

  18. M M M M M 命令编码 U-frame 作用:用于链路管理 不含帧序号,其类型由MM和MMM表示,最多可以定义32种附加命令和附加响应帧。目前已定义了15种无编号帧。

  19. U帧控制域定义 (置正常响应模式) (置扩充正常响应模式) (置异步响应模式) (置扩充异步响应模式) (置异步平衡模式) (置扩充异步平衡模式) (无编号信息) (无编号应答) RD DISC ( 请求断连) (断连) (设置初始模式) (请求初始模式) (无编号探测) (复位) (交换标志) (帧拒绝)

  20. = 0 无意义 非平衡配置 = 1 平衡配置 S/I 帧 P=1 (命令) 从站 正常响应方式NRM 主站 S/I 帧 (响应) I 中F=1,表示最后一个数据帧 S中F=1,表示此时没有数据要发送 异步响应方式 ARM P=1 (询问) 命令方 响应方 F=1 (回答本站状态) 异步平衡方式 ABM P/F(Poll/Final)位的意义(询问/终止)

  21. 帧校验和 • 解决差错控制问题(检错和纠错)。缺省为16位,可扩展为32位。 • 检错: • 用循环冗余校验 • CRC-CCITT • 生成多项式G(x)=x16+x12+x5+1 • 错误处理: • 收到无误的帧,发肯定应答。 • 收到后发现有错,发否定应答,要求重传该帧。 • 帧丢失,发送定时器超时,重传。

  22. HDLC操作 • 通过交换信息、监督和无编号帧实现 • 面向连接,三个阶段 • Initialization----初始化(建立连接) • Data transfer-----数据传输 • Disconnect----断开连接

  23. 操作实例(1) 接收未 准备好 置扩充异步平衡模式 接收 准备好 请求 对方响应 无编号确认 RNR,无数据发送 RR,无数据发送

  24. 操作实例(2) 拒绝第4帧 以后的所有帧 请求 对方响应 对请求命令的响应

  25. Poll/Response

  26. Select/Response

  27. Peer-to-peer communication 置异步平衡模式 UA 无编号应答

  28. 重发1# 及其后续帧 Peer communication with error 拒绝1# 及其后续帧

  29. FTP TELNET HTTP NFS SNMP SMTP 。。。 应用层 TFTP DNS 。。。 主机主机 层 TCP UDP 网间网层 ICMP IP IGMP ARP RARP 网络 接口层 EtherNet, Token Ring, Token Bus, FDDI,PPP/SLIP, X. 25 Internet数据链路层

  30. 使用 TCP/IP 的 客户进程 用户拨号入网的示意图 用户家庭 因特网服务提供者(ISP) 调制解调器 至 因 特 网 PC 机 路由器 … 拨号电话线 路由选择 进程 调制解调器 使用 TCP/IP 的 SLIP/PPP 连接

  31. Internet数据链路层 • 点到点链路 • 两种链路层协议 (old SLIP, now PPP) • SLIP: 非推荐的Internet标准  只能用于IP协议,不兼容 • PPP: 推荐的Internet 标准。

  32. 0xc0 IP分组 0xc0 IP数据报 C0 db C0 db dc db dd C0 SLIP帧 Serial Line IP (SLIP) 用于在串行线上传送IP分组 RFCs: 1055, 1144 如果标志字节(0xC0)出现在IP数据报内部,就通过字符填充来转义,将0xC0替换成两个字节0xDB,0xDC。如果0xDB出现在IP数据报内部,则也要替换为0xDB,0xDD。

  33. Serial IP (SLIP) • 简单: only framing = Flags + byte-stuffing • 可选择对报头进行压缩(CSLIP) 以提高效率。 • 问题: • 需要预先了解对方的 IP 地址 (不能动态分配 IP地址) • 无 “type” 域 =>只支持IP协议,不能多路协议封装 • 无校验和 => 所有的错误检测/纠正均由高层进行。

  34. PPP Ethernet ATM PPP (Point to Point Protocol)

  35. 网络层协议(IP,IPX) 网络控制协议NCP(如IPCP,IPXCP) 链路控制协议LCP 链路层封装格式 (帧格式) 物理层(如EIA RS-232,V.24,V.35) PPP的内容及位置 • RFCs: 1661,1548, 1332 NCP报文负责协商通信双方之间的网络网络层参数 PPP链路层 LCP报文负责对链路层进行初始化 • 网络安全验证协议PAP和CHAP

  36. 因为是点—点连接→所以地址域 无意义,地址字 段的值总是FFH ,表示所有站 点都接收 定义负载数据的报文类型,比如 LCP, NCP, IP, OSI CLNP, IPX等,定义如下 校验字段是CRC冗余码,缺省为2字节,可以协商为4个字节。 控制字段的缺省值是03H,表明PPP在缺省情况下不使用编号,不提供捎带确认的可靠传输机制。但在线路噪声较大的环境中可以选用有编号的传输模式。 PPP 帧格式 flag Address Flag Control Protocol Information CRC 01111110 01111110 1111111 00000011

  37. 当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样)。 此外,PPP协议中定义了一些专用的控制字符,所以当 PPP 用在异步传输时,还需要通过字符填充法进行转义 。 透明传输问题

  38. 将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)。 若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列(0x7D, 0x5D)。 若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。 字符填充法

  39. 协议域值 含义 0021 Internet protocol(IP协议) 002D Van Jacobson Compressed TCP/IP(压缩的TCP/IP) 002F Van Jacobson Uncompressed TCP/IP(未压缩的TCP/IP) 8021 IPCP(IP控制协议) C021 LCP(链路控制协议) C023 PAP(Password Authentication Protocol,口令认证协议) *C025 LQR(Link Quality Report,链路质量报告) *C223 CHAP(Change Handshake Authentication Protocol,竞争握手认证协议) PPP协议域定义

  40. 主要的PPP帧 正式传输数据时使用 传送IP分组 传送LCP 初始化建立链路时使用 传送NCP

  41. Code ID Length Option or Data 1 1 2 ≥0Byte 图 封装在PPP 帧中的LCP报文 LCP 7E FF 03 C0 21 Information FCS 7E

  42. CODE 字段的定义

  43. CODE值:命令名称 方向 描述 1: Configure-request I→R 列出建议的选项和其值 2: Configure-ack I←R 接受所有的选项 3: Configure-nak I←R 有些选项不接受 4: Configure-reject I←R 有一些选项不可协商 5: Terminate-request I→R 请求断开线路 6: Terminate-ack I←R OK,线路已断开 7: Code-reject I←R 收到不明的请求 8: Protocol-reject I←R 未知的协议请求 9: Echo-request I→R 请将本帧送回 10: Echo-reply I←R 送回的帧 11: Discard-request I→R 需丢弃本帧(用于测试) I—启动者 R—响应者

  44. LCP其它字段 ID 字 段:ID字段是用于匹配请求与应答包的,即针对某一请求所做出的应答必须与该请求包ID号相同,以便请求发送方用来匹配应答和请求。当收到合法应答或Options域改变时ID号必须改变,但在报文重传时ID号不变。 Length 字 段:长度字段包括Code、ID、Length本身和Data在内的LCP报文的长度。发送时此字段采取“网络字节顺序”,即高字节在前,低字节在后。 Option or Data字段:本字段的内容据Code值改变而改变。比如对代码值为5和6而言此字段可以不携带任何信息;对7、8而言则是Reject的内容,配置选项或被拒绝的报文 ;对1~4,则是一条或多条配置选项。

  45. Type FF Len 03 Data C0 21 Code (1~4) Type ID Len Length Data …… Data FCS 7E LCP报文配置选项格式 7E 1 1 ≥0Byte 下一个配置选项……

  46. Type 值 含义 1 最大接收单元 (Maximum-Receive-Unit) 2 异步控制字符集(Async-Control-Character-Map) 3 身份验证协议(Authentication Protocol) 4 链路质量协议 (Quality Protocol) 5 Magic Number (魔域) 7 协议字段压缩 (Protocol-Field-Compression)。 8 地址控制字段压缩(Address & Control Field Compression) 9 FCS选择(FCS-Alternatives) LCP常用配置选项类型 例:控制字符集的协商

  47. Type FF Len 03 Data 8021 Code Type Len Data…… ID Len Data… FCS 7E 7E 1 1 ≥0Byte 下一个配置选项…… IPCP报文格式 添加TCP/IP协议时,需要填写:IP地址、地址掩码、 (主、辅)域名服务器地址----PPP中通过IPCP来协商确定这些参数

  48. IPCP类型定义 1IP-Addresses(IP地址群) 2IP-Compression protocol(IP压缩协议) 3IP-Address(IP地址) 4Mobil-Ipv4 129Primary DNS Server Address(基本域名服务器地址) 130Primary NBNS Server Address(基本NetBIOS域名服 务 器地址) 131Secondary DNS Server Address 132 Secondary NBNS Server Address

  49. 1. PC通过modem呼叫路由器(建立物理连接) 2. PC 和路由器交换 LCP 报文来协商PPP参数(建立链路连接) 3. 身份认证。 4. 交换NCP 报文来配置网络层参数,比如TCP/IP ( 需要动态分配 IP 地址、域名服务器地址) (建立网络连接)。 5. 数据传输, 即发送/接收IP分组 6. 采用NCP来释放网络层连接(释放IP地址); 用LCP 来释放链路层连接. 7. Modem 挂机(释放物理连接). PPP 状态转移图 1. Carrier Detected Dead 7. Carrier Dropped failed Link conf Terminate 2. Options Negotiated 6. Done failed Authenticate 5. datacomm 3. Authentication Completed 4. NCP Configuration Netconf

  50. PAP采用两次握手验证,口令以明文传递,被验证方发起验证请求。PAP采用两次握手验证,口令以明文传递,被验证方发起验证请求。 被验证方 主验证方 用户名+口令 通过/拒绝 用户数据库 口令验证协议PAP

More Related