CN111092961A - 一种基于ppp协议的ip地址协商的实现方法 - Google Patents

一种基于ppp协议的ip地址协商的实现方法 Download PDF

Info

Publication number
CN111092961A
CN111092961A CN201911117634.4A CN201911117634A CN111092961A CN 111092961 A CN111092961 A CN 111092961A CN 201911117634 A CN201911117634 A CN 201911117634A CN 111092961 A CN111092961 A CN 111092961A
Authority
CN
China
Prior art keywords
address
negotiation
config
pair
local
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911117634.4A
Other languages
English (en)
Other versions
CN111092961B (zh
Inventor
张咏秋
郭爽
李洋昕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETC 30 Research Institute
Original Assignee
CETC 30 Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CETC 30 Research Institute filed Critical CETC 30 Research Institute
Priority to CN201911117634.4A priority Critical patent/CN111092961B/zh
Publication of CN111092961A publication Critical patent/CN111092961A/zh
Application granted granted Critical
Publication of CN111092961B publication Critical patent/CN111092961B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • H04L12/2858Access network architectures
    • H04L12/2859Point-to-point connection between the data network and the subscribers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于PPP协议的IP地址协商的实现方法,对全连接网络的每一个节点配置相同的地址池进行动态协商,协商的主体功能在插件中实现,且由主叫方负责IP地址对的分配。与现有技术相比,本发明的积极效果是:本发明针对现有的传统PPP‑IPCP协商方式无法满足点对点全连接网络通信需求的情况,提出了一种运用PPP‑IPCP增强型插件的方式,满足在一个网络系统中,任意两点通信双方能够通过动态协商的方式自动分配IP地址,且不会导致节点之间的地址冲突,实现消息的互通。

Description

一种基于PPP协议的IP地址协商的实现方法
技术领域
本发明涉及一种基于PPP协议的IP地址协商的实现方法。
背景技术
PPP(点到点协议)是为在同等单元之间传输数据包的简单链路设计的链路层协议。该链路提供全双工工作模式,顺序传输数据包。PPP的应用主要是通过拨号或专线方式建立点对点连接进行通信,成为各种主机、网桥、路由器之间连接共通的技术手段。PPP通信的底层物理传输介质可以是串口线、光纤及以太网等,具有广泛的应用性,可以适用多种场合之间的信息互通。
PPP主要有三个组件:在串行线路上对数据包进行加密;用于建立、配置和检测数据链路连接的连接控制协议(LCP);用于建立和配置不同网络层协议的网络控制(NCP)协议族。为了适用多种物理信道,点对点通信的两端必须先发送LCP包配置及检测数据连接,设置完成之后再利用NCP协议进行网络层的选择及配置。例如网络层需要使用IP协议,即需要使用一个网络配置协议来进行双方IP地址,域名服务器的IP地址等项目的协商设置,之后才能进行网络协议层的数据传输,完成上述IP配置的协议即是IPCP,协议编号是8021。
传统的PPP通信双方通过IPCP进行IP地址协商,分为静态协商和动态协商两种。静态协商即非协商,双方先手动预设自己的IP地址。在发送Config-Request消息中告诉对端自己的IP地址,在收到对端的该报文之后通过Config-Ack消息进行确认,完成静态协商流程,其正常的流程如图1所示。
动态协商一般由固定一方进行地址的分配,该模式适用于客户端通过拨号和服务器进行PPP连接和IP地址的申请。接收端即服务器端配置IP地址池,发送端即客户端没有IP地址设置。发送方发送两次Config-Request,第一次发送方没有IP地址,所以报文里面填充0.0.0.0,接收端收到之后通过检测报文中的配置发现不是期望的地址,回复Config-Nak消息,并将分配给对端的地址填入该报文中,发送方收到该报文之后,将该地址填入下一包Config-Request中,之后的流程同上述静态协商。动态协商流程如图2所示。
上述两种方式基本都是通过配置完成,需要在每次IP协商前对主机或者路由器进行设置,过程较为繁琐,适用于点对点通信及单点对服务器的拨号通信。
如今的通信网络结构早已不仅满足于点对点通信,呈现向复杂化,交叉化、全连接发展的趋势,如果在一个网络系统中任意节点需要与其他节点进行PPP通信,即需要在每一个节点上虚拟出多个网卡,例如ppp0、ppp1…节点之间的IP地址不能冲突,对此上述的分配方式并不能很好的满足要求:对静态分配方式来说,一则随着网络中节点数目增多,手动配置IP地址的工作量急剧增大;二则任一节点并不知道网络中其他节点的IP地址,很容易造成网络中IP地址冲突混乱的情况,导致网络瘫痪。对动态分配方式来说,传统的模式是一个节点作为服务器端,向其他的节点分配IP地址,并不满足各节点之间对等交叉通信的要求。
发明内容
为了克服现有技术的上述缺点,本发明提供了一种基于PPP协议的IP地址协商的实现方法,本发明针对现有的传统PPP-IPCP协商方式无法满足点对点全连接网络通信需求的情况,提出了一种运用PPP-IPCP增强型插件的方式,满足在一个网络系统中,任意两点通信双方能够通过动态协商的方式自动分配IP地址,且不会导致节点之间的地址冲突,实现消息的互通。
本发明解决其技术问题所采用的技术方案是:一种基于PPP协议的IP地址协商的实现方法,对全连接网络的每一个节点配置相同的地址池用于动态协商,协商的主体功能在插件中实现,且由主叫方负责IP地址对的分配。
与现有技术相比,本发明的积极效果是:
一、解决多节点、全连接网络节点之间IP地址对协商的问题。
传统的PPP-IP协商方式分为静态协商和动态协商。
静态协商适用于点对点且双方知晓对端IP的情况。对于多节点全连接网络来说手动配置较为繁琐,存在不了解对端IP的情况下出现配置IP地址冲突,造成网络瘫痪的风险;动态协商主要用于一对多的网络拓扑,即一个节点作为服务器向其他节点分配IP地址,同样不适用全连接网络。
本发明通过各节点配置同样的地址池,进行动态协商,能较好的解决上述问题。
二、优化协商流程,主要功能采用插件的方式实现,不影响PPP主体功能且便于修改和移植。
优化协商流程,由一方(主叫)负责IP地址对的分配,减少动态协商的握手次数,比传统的协商方式更加高效;该功能采用插件的方式实现,便于修改及移植。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1为静态协商流程;
图2为动态协商流程;
图3为一次协商成功流程;
图4为协商失败流程及重新协商的流程。
具体实施方式
本发明针对全连接网络,在每一个节点上设置相同的地址池,里面包含数量足够的地址对。在与不同的节点通信时采用不重复的地址。该技术采用增强型插件的方式实现,保证在不影响PPP-IPCP功能的情况下增加相应处理流程,协商的主体功能在插件中实现,保证以后功能的移植和扩展。根据流程可分初始化、主叫发起地址对协商、被叫接收或拒绝(主叫更换地址对重新协商或协商失败)。
一、初始化
a)地址池中地址对的设置:根据网络中链路数最大的节点确定,其计算规则为:S=N*2-1,其中S为地址对的数目,N为网络中单个节点最大的链路数,地址池中任意地址均不一样,该数目能保证所有节点之间能独立通信。
b)在节点内,地址池以共享内存的方式供所有协商进程共同使用,最大程度避免节点内各虚拟网卡间的地址对冲突。共享内存采用信号量进行保护,避免两个进程同时对同一对地址对进行操作。
c)对插件进行注册。
d)启动配置文件解析:配置文件按照具体情况设置底层通信接口设备,接口速率,lcp-echo-failure等其他通用设置。被叫选择接收对端对源IP及目的IP的设置、不主动发起IP地址协商选项。
二、根据PPP-IPCP的协商方式,制定自动协商的流程
相关术语:
地址选项:包含协商的IP地址对、是否协商标志、是否接受对端IP标志等;
wantoptions:用于与对端协商的地址选项;
gotoptions:对端确认的地址选项;
allowoptions:允许对端协商的地址对选项;
hisoptions:向对端确认的地址对选项;
(1)一次协商成功的流程:
a)主叫在地址对池中选取“空闲”状态的地址对,例ip_pair1(ip1、ip2),通过插件在重置request information时将Config_req中本地设置的地址对设置为ip_pair1,对端设置中的地址对和历史地址设置全为空,协商选项设置为禁止,即采用自定义方式进行地址分配;IPCP协议设置对端Config_ack检查设置中的ip地址对与本地一致(gotoptions)。IPCP协议通过状态机发送该Config_req发起地址对协商。
b)被叫IPCP协议在接收到对端的Config_req消息时,解析消息中的源地址和目的地址,确认目的地址(即分配给本端的地址)不为0及本地已配置接收对端IP设置的选项,启动插件进行IP地址对可用性检测。
c)可用性检测该IP地址对在本地处于“空闲”状态,重置request information时将Config_req中的本地地址为ip2,设置对端确认包的源地址为ip1,目的地址为ip2;设置本地确认包选项中源地址为ip2,目的地址ip1,设置包含历史ip地址对选项标志,设置该IP地址对在本地已使用状态,回复主叫Config_ack消息完成协商,ipcp up。
d)主叫收到被叫的Config_ack,进行地址对的检测,根据配置本端为不允许协商及含有历史IP,检测消息中的源地址及目的地址与本地的配置相符,设置该IP地址对在本地已使用状态完成协商,ipcp up。
(2)协商失败的情况(假定所有初始配置正确):
a)主叫地址池中的地址对均处于“非空闲”状态。
b)主叫收到对端的Config_nak消息的次数大于等于最大值DEFMAXNAKLOOPS(该值设为地址池中包含地址对数目)。
(3)重新协商的情况(假定所有初始配置正确)
a)被叫收到的Config_req,启动插件IP地址对可用性检测发现该地址对处于“非空闲”状态,回复Config_Nak。
b)主叫收到Config_Nak,检查其接收到该消息的历史次数小于DEFMAXNAKLOOPS,通过插件检查gotoptions中的本地IP和对端IP对是否在本地的地址池中,如果是则将其状态改为可用;在地址池中选择另一组空闲地址对,采取跟上次协商同样的流程与对端协商,直到下次协商成功或失败。

Claims (7)

1.一种基于PPP协议的IP地址协商的实现方法,其特征在于:对全连接网络的每一个节点配置相同的地址池进行动态协商,协商的主体功能在插件中实现,且由主叫方负责IP地址对的分配。
2.根据权利要求1所述的一种基于PPP协议的IP地址协商的实现方法,其特征在于:在进行动态协商前,需进行如下初始化流程:
a)确定地址池中地址对的数目;
b)采用信号量对共享内存进行保护;
c)对插件进行注册;
d)启动配置文件解析。
3.根据权利要求2所述的一种基于PPP协议的IP地址协商的实现方法,其特征在于:所述地址对数目的计算方法为:S=N*2-1,其中S为地址对的数目,N为网络中单个节点最大的链路数。
4.根据权利要求2所述的一种基于PPP协议的IP地址协商的实现方法,其特征在于:所述主叫方从本地地址池中选取空闲可用的地址对,发送给被叫方;被叫方根据当前地址使用情况,选择接受或拒绝该地址对;如果被叫方拒绝,则主叫方重新选取新的地址对,直至地址耗尽或被叫方接受。
5.根据权利要求1所述的一种基于PPP协议的IP地址协商的实现方法,其特征在于:在进行动态协商时,一次协商成功的流程包括:
a)主叫在地址池中选取“空闲”状态的地址对ip_pair1(ip1、ip2),通过插件在重置request information时将Config_req中本地设置的地址对设置为ip_pair1,对端设置的地址对和历史地址全部设置为空,协商选项为禁止;设置对端Config_ack检查设置中的ip地址对与本地一致;IPCP协议通过状态机发送该Config_req发起地址对协商;
b)被叫IPCP协议在接收到对端的Config_req消息后,解析消息中的源地址和目的地址,确认目的地址不为0及本地已配置接收对端IP设置的选项,启动插件进行IP地址对可用性检测;
c)可用性检测该IP地址对在本地处于“空闲”状态,则在重置request information时将Config_req中的本地地址设置为ip2,设置对端确认包的源地址为ip1,目的地址为ip2;设置本地确认包选项中源地址为ip2,目的地址ip1,设置包含历史ip地址对选项标志,设置该IP地址对在本地已使用状态,回复主叫Config_ack消息完成协商,ipcp up;
d)主叫收到被叫的Config_ack后,进行地址对的检测,根据配置本端为不允许协商及含有历史IP,检测消息中的源地址及目的地址与本地的配置是否相符,设置该IP地址对在本地已使用状态完成协商,ipcp up。
6.根据权利要求1所述的一种基于PPP协议的IP地址协商的实现方法,其特征在于:在被叫收到Config_req后,启动插件进行IP地址对可用性检测时发现该地址对处于“非空闲”状态,则回复Config_Nak;主叫收到Config_Nak后,判断其接收到该消息的历史次数是否小于设定的地址对数目,若是,则通过插件检查gotoptions中的本地IP和对端IP对是否在本地的地址池中,如果是则将其状态改为可用;在地址池中选择另一组空闲地址对,继续与对端进行动态协商。
7.根据权利要求6所述的一种基于PPP协议的IP地址协商的实现方法,其特征在于:当主叫地址池中的地址对均处于“非空闲”状态且主叫收到对端的Config_nak消息的次数大于等于设定的地址对数目时,则动态协商失败。
CN201911117634.4A 2019-11-15 2019-11-15 一种基于ppp协议的ip地址协商的实现方法 Active CN111092961B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911117634.4A CN111092961B (zh) 2019-11-15 2019-11-15 一种基于ppp协议的ip地址协商的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911117634.4A CN111092961B (zh) 2019-11-15 2019-11-15 一种基于ppp协议的ip地址协商的实现方法

Publications (2)

Publication Number Publication Date
CN111092961A true CN111092961A (zh) 2020-05-01
CN111092961B CN111092961B (zh) 2021-12-17

Family

ID=70393244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911117634.4A Active CN111092961B (zh) 2019-11-15 2019-11-15 一种基于ppp协议的ip地址协商的实现方法

Country Status (1)

Country Link
CN (1) CN111092961B (zh)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1437360A (zh) * 2002-02-07 2003-08-20 华为技术有限公司 通过点对点协议上网的用户获取互联网协议地址的方法
US6771635B1 (en) * 1999-03-31 2004-08-03 Telefonaktiebolaget Lm Ericsson (Publ) IP address allocation for mobile terminals
US20050108432A1 (en) * 1999-07-08 2005-05-19 Akihiro Tominaga Automatic address management method
CN1719764A (zh) * 2004-07-08 2006-01-11 中兴通讯股份有限公司 一种使用点到点协议时防止ip地址泄漏的方法
EP1750398A1 (en) * 2004-07-20 2007-02-07 Huawei Technologies Co., Ltd. A method and apparatus supporting a pppoa terminal accessing
CN101640943A (zh) * 2008-07-31 2010-02-03 国际商业机器公司 用于无线局域网的网络层切换方法及相应无线接入点设备
US20100138651A1 (en) * 2008-11-26 2010-06-03 Qualcomm Incorporated Apparatus and method for selecting ip services
US7756107B1 (en) * 2000-05-17 2010-07-13 Cisco Technology, Inc. Dial-out with dynamic IP address assignment
US20120179826A1 (en) * 2009-09-23 2012-07-12 Zte Corporation Address Distribution Method, Device and System Thereof
CN102685264A (zh) * 2012-05-08 2012-09-19 北京星网锐捷网络技术有限公司 动态主机配置协议地址分配方法、中继设备及服务器
CN102740401A (zh) * 2011-02-10 2012-10-17 中兴通讯股份有限公司 一种通过可信任的固网接入移动核心网络的方法和系统
CN102917081A (zh) * 2012-09-27 2013-02-06 汉柏科技有限公司 Vpn客户端ip地址的分配方法、报文传输方法及vpn服务器
CN103200283A (zh) * 2013-04-19 2013-07-10 江苏物联网研究发展中心 多中继无线通信系统及该系统空中接口ip化的实现方法
US20170085549A1 (en) * 2015-03-31 2017-03-23 Willie L. Donaldson Secure dynamic address resolution and communication system, method, and device
CN109271433A (zh) * 2018-09-03 2019-01-25 中新网络信息安全股份有限公司 一种集群数据同步方法

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6771635B1 (en) * 1999-03-31 2004-08-03 Telefonaktiebolaget Lm Ericsson (Publ) IP address allocation for mobile terminals
US20050108432A1 (en) * 1999-07-08 2005-05-19 Akihiro Tominaga Automatic address management method
US7756107B1 (en) * 2000-05-17 2010-07-13 Cisco Technology, Inc. Dial-out with dynamic IP address assignment
CN1437360A (zh) * 2002-02-07 2003-08-20 华为技术有限公司 通过点对点协议上网的用户获取互联网协议地址的方法
CN1719764A (zh) * 2004-07-08 2006-01-11 中兴通讯股份有限公司 一种使用点到点协议时防止ip地址泄漏的方法
EP1750398A1 (en) * 2004-07-20 2007-02-07 Huawei Technologies Co., Ltd. A method and apparatus supporting a pppoa terminal accessing
CN101640943A (zh) * 2008-07-31 2010-02-03 国际商业机器公司 用于无线局域网的网络层切换方法及相应无线接入点设备
US20100138651A1 (en) * 2008-11-26 2010-06-03 Qualcomm Incorporated Apparatus and method for selecting ip services
US20120179826A1 (en) * 2009-09-23 2012-07-12 Zte Corporation Address Distribution Method, Device and System Thereof
CN102740401A (zh) * 2011-02-10 2012-10-17 中兴通讯股份有限公司 一种通过可信任的固网接入移动核心网络的方法和系统
CN102685264A (zh) * 2012-05-08 2012-09-19 北京星网锐捷网络技术有限公司 动态主机配置协议地址分配方法、中继设备及服务器
CN102917081A (zh) * 2012-09-27 2013-02-06 汉柏科技有限公司 Vpn客户端ip地址的分配方法、报文传输方法及vpn服务器
CN103200283A (zh) * 2013-04-19 2013-07-10 江苏物联网研究发展中心 多中继无线通信系统及该系统空中接口ip化的实现方法
US20170085549A1 (en) * 2015-03-31 2017-03-23 Willie L. Donaldson Secure dynamic address resolution and communication system, method, and device
CN109271433A (zh) * 2018-09-03 2019-01-25 中新网络信息安全股份有限公司 一种集群数据同步方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RAOJUN0051: "ppp协议支持动态IP地址协商", 《DOCIN.COM/P-1843777435》 *

Also Published As

Publication number Publication date
CN111092961B (zh) 2021-12-17

Similar Documents

Publication Publication Date Title
CN112911027B (zh) 用于建立媒体会话的方法和装置
US8020203B2 (en) Techniques for high availability of virtual private networks (VPN's)
US6370592B1 (en) Network interface device which allows peripherals to utilize network transport services
US7640364B2 (en) Port aggregation for network connections that are offloaded to network interface devices
EP1914939B1 (en) A method for the triggering failure detection of bidirectional forwarding detection
US6061728A (en) Arrangement for controlling network proxy device traffic on a transparently-bridged local area network using a master proxy device
JP2001356973A (ja) ネットワークシステム
US10523547B2 (en) Methods, systems, and computer readable media for multiple bidirectional forwarding detection (BFD) session optimization
EP3151504B1 (en) Method and device for establishing multipath network connections
RU2373654C1 (ru) Способ установления однорангового соединения и предназначенная для этого система
WO2013152718A1 (zh) 一种路径计算单元通信协议会话建立方法及装置
US7916651B2 (en) Services convergence among heterogeneous wired and wireless networks
CN111092961B (zh) 一种基于ppp协议的ip地址协商的实现方法
CN109618022B (zh) 基于ip子网的对等协商式动态编址方法及装置
CN107454178B (zh) 数据传输方法及装置
CN113542395B (zh) 报文处理方法和报文处理系统
Cisco Configuring PPP for Wide-Area Networking
Cisco Configuring PPP for Wide-Area Networking
Cisco Configuring PPP for Wide-Area Networking
KR20040017364A (ko) 네트워크 노드에서 다수의 체크 섬 알고리즘을 지원하기위한 방법
Cisco Configuring PPP for Wide-Area Networking
Cisco Configuring PPP for Wide-Area Networking
Cisco Configuring PPP for Wide-Area Networking
Cisco Configuring PPP for Wide-Area Networking
Cisco Configuring PPP for Wide-Area Networking

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant