《PPP协议简介.docx》由会员分享,可在线阅读,更多相关《PPP协议简介.docx(21页珍藏版)》请在第一文库网上搜索。
1、第一章PPP合同简介:1.1.1PPP封装。PPP封装格式如下,其在链路上从左传至右|地址FFI控制03I合同8或16位|信息I填充I1.1.1.1合同域合同域是一或两个八位位组,其值标记了封装在数据包里信息域的内容为哪一种合同的数据报,最新的合同域的类型值在近来的RFC1700uAssigedNumbers”可见到,下面为其中一部分值的定义:值(16进制)。合同名C021链路控制合同(1CP)。(:023。口令认证合同(PAP)Co25。链路质量报告(1QR)C223。握手认证合同(CHAP)。C02B带宽分派控制合同(BACP)。C02D带宽分派合同(BAP)003oD。0多链路点到点合同
2、(MP)。8021。IP控制合同(IPCP)IPOO21。OO2DVaJacobsonCompressedTCP/IP如果要开发新的合同,必须向IANA(1teretAssignedNumbersAuthority)获得一种号码。Ijj.2信息域信息域为零或多种八位位组,其内容为在合同域中指定合同的数据报,信息域的最大长度(涉及填充部分,但不涉及合同域),称为最大接受单元长度(MRU),默觉得15OO个八位位组,但PPP合同可通过协商来拟定MRU时值。1.1.1.3填充域在传播时,信息域长度也许达不到MRU值,此时,在信息域之后须加上填充域,以使信息域加填充域长度达到MRU值,各个合同须负责将
3、填充域与真正的信息域辨别开来。1.1.2PPP链路操作可将PPP链路通信提成5个阶段,未通、建立、认证、连通、终结阶段。各个阶段关系如下:1.1.2.1未通阶段链路最初及最后均处在该阶段,当一种外部事件批示物理层已准备好,可被链路层使用时,PPP进入链路建立阶段。1.1.2. 2建立阶段在该阶段,链路互换某些配备包以拟定配备数据。1.1.2.3 认证阶段配备拟定后来,就进入了认证阶段,在该阶段,一方规定另一方给出认证信息,以便确认对方是合法时,容许对方与本方通信。1.1.2.4 连通阶段认证通过后来,链路就进入连通阶段,在该阶段达到开放状态(OPENEDSTATE)后,上层合同可通过本链路进行
4、通信。所需注意的是,该阶段对于每一控制合同,各自单独进行打开过程,某一控制合同C)PENED,只能使该控制合同所相应的上层合同可通过本链路进行通信。1125终结阶段PPP可在任何时候终结链路,这也许由于认证失败,链路的质量规定达不到,空闲时间计数器超时,管理层规定关闭等因素引起。1.1.341CP选项协商自动机1.1.3.1状态状态状态描述1Starting态2CIoSed态3StopPed态低层不可用(DoWn态),高层发出C)Pen(是Initia1口勺Open相应态)低层可用(UP态),高层无OPen发本层低层可用(UP态),本层己收到Open,且又发出了Hf事件,或收到456789Te
5、rminate_ACk事件(是CIOSed於JoPen相应态)CIoSing态本层发出了Terminate_Request试图终结连接,尚未收Terminate_Ack,计时器处在工作状态Stopping态是C1oSing0Open相应态Request_Sent发出Configure_Request,未收到Configure_Ack,计时器处态在工作状态Ack_Received态AckSent态C)Pened态Configure_Request己发出,Configure_Ack也已收到,Configure_Ack未发出,计时器处在工作状态已发出Configure_ReqUest和Configu
6、re_Ack,尚未收到Configure_ack,计时器处在工作状态Configure_Ack已发送,也已接受到对方发来的Configure_Ack,计时器不工作EventDescription1 UP低层批示它已准备好接受或发送数据包2 DOWN低层批示它已不能发送或接受数据包3 OPEN高层规定建立一条链路4 C1OSE高层批示关闭一条链路5 TO+计时器超时,尚有重发机会6 TO-计时器超时,已无重发机会7 RCR收到COnfigUre_RequesI,并且其配备数据是可接受的J8 RCR-收至IJConfigUre_Request,并且其配备数据是不可接受的9 RCA收到Configu
7、re_Ack1RCN收至IJConfigure_Nak或收到Configure_Reject01RTR收到Termina1e_Request112RTA收到Terminate_Ack13 RUC收到不能解释的包(ReCeive_Unknown_Code)14 Rxj+收到Code.Reject或ProIOCo1RejeCt,但回绝的!值可接受,不引起本链路断开15Rxj-收至IJCOde_Reject或Protoco1RejeCt,且其成果是严重的,使本链路断开16RXR4攵至IJEChO_Request或Echo_ReP1y或Discard_Request1.1.3.3本层需做动作1 t1u
8、:This_1ayer_Up2 t1d:This_1ayer_Down3 t1s:This_1ayer_started告知上层本层已进入OPened态告知上层本层己离开OPened态告知上层本层已进入Staring态4t1f:This_1ayer_FiniSh告知上层本层已进入Initia1态,C1osed或StoPpeded态5 ire:Initia1ize_Rest初始化重启动计数器art_Count6 zrc:Zero.Restart_Count将重启动计数器置零7 scr:Send_Configure_Rcqus发出配备祈求8 sca:Send_Configure_Ac发出Config
9、ure_Ackk9 scn:Send_Configure-Nak发出COnfigure_Nak或Configure_RejectIOstr:Send_Terminate发出Terminate_RequestRequest1ista:Send_Terminate_A发出Terminate_Ackck12scj:Send_Code_Reject发出COde_Reject13ser:Send_Echo_Rep1y发出Echo_Rep1y1.1.3.4状态转换图701S1aring2Gosed3Stopped4CkMein55Stopping6Reqjat7AckJRcvd8Ack_sent9Open
10、edUP2irc1ser/6-Down-011s/1O1111t1d/1Open的11kser/63r5r5r6789rC1ose0df/O2244ire,StIy4imstMirc,st4t1dX,stu4TO-sMsc5scr/6scd6sc8TO-t1f2tW3tW3pt1F3ptW3pRCR+一-sta/2ircct,sv845s08sea,tIu/9sc8dd1sc;sca/8RCR-一sta/2irc,secSCrV645scr6sct/7scr/6tId,sci;s6RCA-sta/2sta/345irc7s06xirc4V9tkisr6xRCN-sta/2sta/345irCS
11、Cr/6scr6xkxs8t1d,scr/6xRIRsta/2sta3sta/4sta/5SUybstH6staSIkUrc,sta/5RIA23t1f2t1f/266811d,scr/6RUC-scj2scj/3sq/4SCj/5scj6卸s8Rj+-23456789Rxj-dPwt1P3tif/2t1Bt1f/3t1f/3t1tki,irc,str/5RXR-2345678scd9P:被动选项,等待对方发配备祈求:重新启动选项,上层但愿对某些参数重新协商X:交叉连接,多点但愿与本点相连共有三种类型的1CP包链路配备包,用于建立和配备链路(Configure_ReqUestzConfigur
12、e_AckzCofigUre_Nk及Configure_Reject)链路终结包,用于终结一条链路(Terminate_RequestJermiate_Ack)链路维护包,用于管理和监测链路(Code_RejectProtICo1_RejectzEcho_RequestzEcho_ReP1y及Discard_Request)1CP包封装在PPP信息域中,而PPP的合同域为C021(链路控制合同)1CP包的格式如下:代码CODE标记ID长度1EN数据DATA一种八位位组一种八位位组两个八位位组零或多种八位位组代码:代码域为一种八位位组,标记了1CP包的种类,最新的1CP代码值定义在最的RFCtt
13、AssigredNumbers”中,下面为某些代码值的定义:1 Configure_Reqest2 Configure_Ack3 Configure_Nak4 Configure_Reject5 Terminate_Request6 Terminate_Ack7 Code_Reject8 Prot1co1_Reject9 Echo_Requset1OECho_Rep1y11Discord.Request标记:标记域为一种八位位组,用于辅助匹配祈求(requests)和回答(rep1ys)如果收到一种包具有无效的标记,该包将被丢弃,而不影响1CP自动机。长度:长度域为二个八位位组,它表达1CP包
14、的长度,涉及代码、标记、长度和数据四部分,该长度不能超过链路规定的MRU值,超过长度部分的八位位组被作为填充部分而忽视掉,如果长度无效(如该值不小于MRU),该包将被丢弃。数据:数据域为零或多种八位位组,由长度域的值可知其为几种八位位组,根据代码域的不同可对数据域的数据作不同的解释。1.1.51CP配备选项1CP配备选项容许对点对点链路的默认特性作协商,修改如果在ConfigUre.Request包中没有某配备选项,那么就采用默认的配备。配备选项格式如下:类型TYPE长度1EN数据DATA一种八位位组一种八位位组零或多种八位位组类型:类型域为一种八位位组,指明配备选项的类型,最新的1CP选项类型值可