第十二章建立串行PPP连接CIC
- 格式:ppt
- 大小:726.50 KB
- 文档页数:25
PPP链路建立全过程(包括LCP协商、认证阶段、NCP协商)PPP(Point-to-Point Protocol)协议处于TCP/IP协议栈的数据链路层,主要用在支持全双工的同异步链路上,进行点到点之间的数据传输。
PPP主要由三类协议族组成:LCP(Link Control Protocol)链路控制协议族,主要用来建立、拆除和监控PPP数据链路。
NCP(Network Control Protocol)网络层控制协议族,主要用来协商在该数据链路上所传输的数据包的格式与类型。
例如:IPCP、MPLSCP等扩展协议族CHAP(Challenge-Handshake Authentication Protocol)和PAP(Password Authentication Protocol),主要用于网络安全方面的验证。
PPP报文类型:0x01Configure-Request0x02Configure-Ack0x03Configure-Nak0x04Configure-Reject0x05Terminate-Request0x06Terminate-Ack0x07Code-Reject0x08Protocol-Reject0x09Echo-Request0x0A Echo-ReplyPPP建链过程以及每个阶段的的状态迁移通信双方开始建立PPP链路,首先从dead阶段开始,进入到established阶段,如果LCP协商成功,则进入从established阶段转入下一个阶段,可能是认证阶段也可能是NCP 阶段。
当通信的双方检测出物理线路激活(检测到链路上有载波信号发出),并且物理链路可用时,则物理层会向链路层发送一个Up事件。
链路层收到该事件后,触发PPP进程发送configuration-request报文,开始LCP的协商过程,协商的参数有:工作方式SP(Single-link PPP)单链路或者是MP(Multilink PPP)多链路、最大接收单元MRU、验证方式(CHAP或者PAP)和魔术字(magic number)。
计算机网络应用PPP链路建立过程在PPP协议中,提供了一整套完善的方案来解决链路建立、维护、拆除、上层协议协商、认证等问题。
其链路建立过程如图3-45所示。
图3-45 PPP链路建立过程其中,在链路建立过程中,包括以下几个阶段:●链路不可用阶段当物理层不可用时,链路处于dead阶段,PPP链路必须从这个阶段开始和结束。
●链路建立阶段当物理层可用时,即进入链路建立阶段(Establish)。
在该阶段进行LCP协商,协商内容包括工作方式、验证方式和最大传输单元等。
LCP在协商成功后将进入Opened状态,用来表示底层链路已经建立。
●认证阶段在认证阶段包括配置验证和未配置验证两种情况。
若未配置验证则进入网络层协议阶段(Network),此时LCP仍处于Opened状态,而NCP则从原始转到request-sent;若配置了验证,则进入认证阶段(Authenticate)开始配置CHAP或PAP验证。
●网络层协议阶段当在认证阶段开始配置验证方式为CHAP或PAP时,包括验证成功和失败两种结构。
若验证成功,则进入网络层协议阶段(Network);若验证失败则不经过该阶段,直接进入下一阶段。
●链路终止阶段当在网络层配置验证失败时,将直接进入终止阶段(Terminate),以拆除链路,此时,LCP状态转为Down(不可用)。
●通过NCP协商来选择和配置网络层协议。
只有选中的网络层协议配置成功后,该网络层协议才可通过这条链路发送报文了。
●PPP链路将一直保持通信,直至有明确的LCP或NCP帧关闭这条链路,或由于外部因素的干扰(如,用户的操作干预等)。
第七章程序间调用本章将主要介绍CICS应用程序之间的相互调用,以及如何在多个CICS程序间中进行参数的传递以及怎样进行运行的连接,从而实现企业的业务逻辑。
企业的某种业务往往需要由很多步骤组成,有些步骤甚至还要反复多次执行。
例如将一个业务处理程序分为屏幕处理和输入输出处理两个独立的部分,这样能够增强程序功能的独立性。
那么,当执行这个应用程序的时候,如何在这几个子程序之间进行参数的传递呢?在CICS COBOL程序中,我们利用连接节(LINKAGE SECTION)来完成参数的传递。
在编写这种类型的应用程序时,需要对内存的某些区域或者CICS的系统信息进行寻址、访间和修改,下面我们就对这些问题进行具体的讨论。
具体来讲本章将重点讨论CICS的LINK命令,XCTL命令,START命令。
7.1 CICS应用系统的结构首先我们通过图7.1来看一下程序到程序的控制类型。
在下面这个例子中,有几个子程序,包括登陆程序、菜单程序、信息处理程序和功能程序。
通过图7.1我们可以着到首先,登陆程序完成对用户的合法性检查,如果用户是合法的,则将控制权转移给菜单程序;菜单程序显示出用户可以进行选择的选项,当用户作出相应的选择以后,菜单程序对用户输入的选择进行合法性检查;如果发生错误则菜单程序将控制权转移给信息程序,信息程序通过查信息表给出相应的错误信息;如果用户的选择是正确的,则程序的控制权转移到用户所选择的功能程序,开始执行用户所选择的功能。
图7.1 程序间调用通过这个例子我们可以着到,在CICS系统中,程序和程序之间是可以进行控制权的转移的,也就是指程序之间允许互相调用。
在CICS COBOL程序中,程序到程序的控制方法主要有两种,一种是LINK方式,一种是XCTL方式.我们将分别在本章的第二节和第三节给出具体的介绍。
7.2 LINK命令CICS LINK可以实现程度之间的连接。
传统的CICS的连接是指在同一个CICS系统中运行的程序之间的连接,也就是说,只有在同一个CICS系统中运行的程序才可以进行CICS 的连接。
PPP链路操作过程解析 ⼀、概述 为了通过点对点链路建⽴通信,PPP链路的每⼀端,必须⾸先发送LCPpackets以便设定和测试数据链路。
在链路建⽴之后,peer才可以被认证。
然后,PPP必须发送NCPpackets以便选择和设定⼀个或更多的⽹络层协议。
⼀旦每个被选择的⽹络层协议都被设定好了,来⾃每个⽹络层协议的datagrams就能在连路上发送了。
链路将保持通信设定不变,直到外在的LCP和NCP关闭链路,或者是发⽣⼀些外部事件的时候(休⽌状态的定时器期满或者⽹络管理员⼲涉)。
⼆、阶段划分框图 在设定、维持和终⽌点对点链路的过程⾥,PPP链路经过⼏个清楚的阶段,如框图所⽰。
这张图并没有给出所有的状态转换。
三、链路死亡(物理连接不存在) 链路⼀定开始并结束于这个阶段。
当⼀个外部事件(例如载波侦听或⽹络管理员设定)指出物理层已经准备就绪时,PPP将进⼊链路建⽴阶段。
在这个阶段,LCP⾃动机器将处于初始状态,向链路建⽴阶段的转换将给LCP⾃动机器⼀个UP事件信号。
执⾏记录: 典型的,在与调制解调器断开之后,链路将⾃动返回这⼀阶段。
在⽤硬件实现的链路⾥,这⼀阶段相当的短--仅够侦测设备的存在。
四、链路建⽴阶段 LCP⽤于交换配置信息包(Configurepackets),建⽴连接。
⼀旦⼀个配置成功信息包(Configure-Ackpacket)被发送且被接收,就完成了交换,进⼊了LCP开启状态。
所有的配置选项都假定使⽤默认值,除⾮被配置交换所改变。
有⼀点要注意:只有不依赖于特别的⽹络层协议的配置选项才倍LCP配置。
在⽹络层协议阶段,个别的⽹络层协议的配置由个别的⽹络控制协议(NCP)来处理。
在这个阶段接收的任何⾮LCPpackets必须被silentlydiscarded(静静的丢弃)。
收到LCPConfigure-Request(LCP配置要求)能使链路从⽹络层协议阶段或者认证阶段返回到链路建⽴阶段。
PPP协议:关于在点到点链路上进行多协议包传送的建议1.介绍PPP有三个主要的组成部分:1. 在串行链路上封装数据报(datagrams)的方法。
2. 建立,配置和测试数据链路链接(thedata-linkconnection)的LCP协议(Link ControlProtocol)。
3. 建立和配置不同网络层协议的一组NCP协议(NetworkControlProtocol)。
为了在点到点链路(point-to-pointlink)上建立通信,PPP链路的一端必须在建立阶段(Establishmentphase)首先发送LCP包(packets)配置数据链路。
在链路建立后,在进入到网络层协议阶段前,PPP提供一个可选择的验证阶段。
默认的,身份验证不是强制的。
如果希望进行链路的身份验证,则实现者必须在建立阶段指明身份验证-协议配置选项。
这些协议主要是为通过交换网(switchedcircuits)或者拨号线(dial-uplines)连接到PPP网络服务器的主机和路由器服务的,但是也可以被用到专用链路(dedicatedlinks)中。
服务器在为网络层磋商选择选项时可以对连接的主机或路由器进行身份验证。
此文档定义了PPP身份验证协议。
链路建立和验证阶段,和验证协议配置选项定义在PPP协议中[1]。
1.1要求说明书在本文档中,用以下几个词来表示说明书的要求,这些词一般以大写字体书写。
MUST这个词表示在此说明书中是绝对要求的。
MUSTNOT这个词组表示在此说明书中是绝对禁止的。
SHOULD此词表示在此说明书中是推荐的。
MAY此词表示在此说明书中是可选的。
1.2术语本文档中,频繁使用以下术语:authenticator――验证者:要求验证的链路端点。
验证者说明了在链路建立阶段使用的验证协议。
Peer――点到点链路的另一端:正在被验证者验证的一端。
Silentlydiscard――静静地丢弃丢弃packet而不进行进一步的处理。
02PPP2.1串行点对点链路2.1.1串行通信简介1、串行通信如何工作?信息通过一条导线发送时,每次发送一个位。
2、并行通信如何工作?PC 上的25 针并行端口,有8 根数据传输线同时传输8 个数据位。
3、经常是串行链路的时钟频率远高于并行链路,因此它们可以实现更高的数据传输速率,因为有两个因素限制了并行通信的速率:时滞和串扰的干扰。
1)时滞(Clock Skew)在并行连接中,不要以为发送方同时发出的8 位数据会同时到达接收方。
而是,某些位先到,某些位后到。
这称为时滞。
2)干扰(Interference):并行导线在物理上并排捆成并行电缆,因此信号会相互干扰。
导线之间的串扰需要更多的处理资源,尤其是在频率较高时。
4、串行通信标准1)RS-232;2)V.35;3)HSSI;2.1.2TDM(时分多路复用)1、TDM1)TDM 通过为用户分配时隙,使其可以共享介质上可用的传输时间。
2)MUX 以循环方式接受连接设备的输入并连续不断地传输数据。
3)T1/E1 和ISDN 电话线是同步TDM 的常见例子。
2、统计时分复用(STDM)STDM 采用可变的时隙长度,让通道可以竞争任何空闲的时隙空间。
在流量高峰时段,STDM 使用缓冲区内存临时存储数据。
2.1.3分界点2.1.4DTE和DCE1、DTE:数据终端设备,WAN 链路的用户设备端2、DCE:数据通信设备,通信设施的WAN 提供商端,负责提供时钟信号3、电缆标准4、并行到串行的转换2.1.5HDLC封装1、WAN 封装协议1)HDLC(High-Level Data Link Control ,高级数据链路控制);2)PPP(Point-to-Point ,点到点协议);3)串行线路Internet 协议(SLIP)4)X.25/平衡式链路接入协议(LAPB)5)帧中继(Frame Relay)6)A TM2、HLDC 封装:HDLC 是由国际标准化组织(ISO) 开发的、面向比特的同步数据链路层协议。
第6章串行链路网际协议串行链路网际协议S L I P和P P P为“穷人”提供了接入因特网的可能。
只需要一个M o d e m 和一个配备F I F O缓存的串行卡,除此以外,不再需要别的硬件。
它的使用非常简单,而且费用低廉,越来越多的私人企业,以普通用户能够承受的价格,开始提供拨号I P服务。
本章和第9章,我们将为大家介绍S L I P和P P P驱动程序。
S L I P驱动程序的存在有相当长一段时间了,而且其运行相当可靠。
P P P驱动程序是迈克・克拉翰和艾尔・侬伊尔近来开发出来的。
我们将在下一章详细讨论。
6.1 常规需求要想使用S L I P或P P P,必须像前面几章描述的那样,配置一些基本的网络特性。
比如,起码应该安装L o o p B a c k接口,以及提供名字解析。
在连上因特网时,人们肯定想使用 D N S。
最简单的方法是把某个域名服务器的地址放入自己的r e s o l v. c o n f文件中:只要S L I P链接一激活,就会对这个服务器进行查询。
该名字服务器离你上网的地方越近,越好。
但是,上面的方法不是最佳解决之道,因为所有服务器名查找仍然通过你自己的S L I P/P P P链接来完成。
如果担心因此而造成的带宽开销,最好安装一个c a c h i n g-o n l y域名服务器。
它不能真正地充当一个域,对发自你的主机的所有 D N S查询来说,它只是一个中间站。
不过,它的好处在于建立了一个缓冲区,所以所有的查询都只能在这个串行链接上发送一次。
c a c h i n g-o n l y服务器所用的n a m e d.b o o t文件像下面这样:: named.boot file for caching-only serverd i re c t o r y/ v a r/n a m e dp r i m a r y0 .0.127.i n-a d d r. a r p a db.127.0.0 : loopback netc a c h e.d b.c a c h e: root servers除了n a m e d.b o o t文件外,还必须用一个有效的根域名服务器清单来安装d b.c a c h e文件。