CN111435922B - 一种带宽共享方法 - Google Patents

一种带宽共享方法 Download PDF

Info

Publication number
CN111435922B
CN111435922B CN201910725427.0A CN201910725427A CN111435922B CN 111435922 B CN111435922 B CN 111435922B CN 201910725427 A CN201910725427 A CN 201910725427A CN 111435922 B CN111435922 B CN 111435922B
Authority
CN
China
Prior art keywords
resource
message
shared
protocol
resources
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.)
Active
Application number
CN201910725427.0A
Other languages
English (en)
Other versions
CN111435922A (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.)
Beijing Baustem Information Technology Co ltd
Original Assignee
Beijing Baustem Information Technology Co ltd
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 Beijing Baustem Information Technology Co ltd filed Critical Beijing Baustem Information Technology Co ltd
Publication of CN111435922A publication Critical patent/CN111435922A/zh
Application granted granted Critical
Publication of CN111435922B publication Critical patent/CN111435922B/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
    • 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
    • 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/2869Operational details of access network equipments
    • H04L12/2878Access multiplexer, e.g. DSLAM
    • H04L12/2892Access multiplexer, e.g. DSLAM characterised by the access multiplexer architecture
    • H04L12/2896Distributed processing, e.g. on line cards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Abstract

本发明实施例公开了一种带宽共享方法,包括:通过DS在接入网家庭网络之间发现和选定RC和RS;RS在被选定后向DS发布用于共享的资源,RC在被选定后通过DS获取匹配的DS提供的一套资源集合;RC从资源集合中选出RS建立起共享通道;当需要共享他人资源的家庭网络设备发送的特定报文被本地RC收到后,本地RC通过共享通道对特定报文进行传递;目的RS对接收到的特定报文进行SNAT处理后发给目标地址,到达目标地址后目标地址针对该报文发出返回报文;返回的特定报文经RS发向本地RC再发回给对应的家庭网络设备。该实施例方案使用户之间实现了业务流量分享,打破了传统路由和多NAT带来的限制,达到了扩展共享带宽的目标。

Description

一种带宽共享方法
技术领域
本发明实施例涉及接入网技术,尤指一种带宽共享方法。
背景技术
目前,家庭网络一般是指用户家庭环境下的各种网络设备互联所组成的家庭内部网络,通常都是采用IP(Internet Protocol,互联网协议)为3层协议的局域网。家庭网络内部的网络设备如果需要和外界通信,这需要借助接入网。通常接入网由接入运营商进行运营,家庭网络接入到接入网使得家庭网络之间互联互通成为可能,特别是家庭网络内的设备要和互联网上的其他设备通信时,则需要通过接入网提供的互联网出口进行互联互通。家庭网络通过接入网运营商提供的接入设备接入到接入网,这些设备通常为3层接入网关或者2层接入网桥、2层半接入的Vlan交换机等等。
接入网是用户和外界的最后一公里的通道,纯粹的接入网运营商的服务是提供用户家庭和外界之间的数据通道,但仅有这个通道不足以提供业务给用户。接入网会对接各种业务网络来提供多种多样的业务给用户。比如电话业务、TV(电视)业务、互联网数据业务等等。这些业务有的来自接入网运营商自有的服务,有些是来自第三方业务提供商的。比如互联网业务,作为本地接入网提供商往往自身并没有提供电话业务,他们一般只有接入网有限的本地接入能力以及特定的业务能力,比如数字广播电视业务。
单独观察某个接入网,一些原因造成了用户的特定的业务流量带宽缺乏。有些用户接入网服务商并非随时都有充足的Internet(网络)接入带宽,这造成其下用户的接入带宽缺乏。另外,有些用户也并未从接入网服务商中订购了Internet服务。
从家庭环境整体的看,一个家庭可能订购多个接入网服务。比如一般家庭都有有线电视接入、DSL(数字用户线路)或光纤网络接入,无处不在(例如通过智能手机、无线AP)的移动网络接入。由于家庭中的家庭网络把各种家庭设备连接起来,因此可以使用不同的接入网提供的业务带宽。
目前,部分用户只订购了单一接入网接入服务,而没有定购特定业务服务,或者订购了特定业务服务的少量带宽,他们希望能分享其他人的业务流量以拓展带宽;还有部分用户按月订购了多种业务。以上情况使得带宽共享成为一种需求,但传统的报文分发方法不适合于用户之间的带宽共享,原因有以下几点:
1、传统接入网网关上的路由条目的能力有限,路由协议一般采用缺省路由的方式,即对非同网段直达和广播组播报文外,针对其他报文发送报文时不论目的地址是多少都发给缺省路由。一个业务网络,一般设置一条到2条的缺省路由,当多于一条缺省路由时,需要采用特定的策略,比如,热备份、负荷分担、策略路由算法等。但不论怎样,缺省路由都不多,现实中最多的是3条缺省路由。
2、另外的限制来自于NAT(网络地址转换),由于IPV4(IPv4是互联网协议IP的第四版)地址缺乏问题,ISP(Internet Service Provider,互联网服务提供商)运营商在接入网到Internet之间都采用NAT的方式,也就是说从某个NAT设备发出到internet的报文必须原路返回,否则,返回的报文将无法到达原始发送端,因此双发将无法通信。一个家庭网络如果采用同时由多个路由发送报文,会出现问题。比如,RTP(Real-time TransportProtocol,实时传输协议,是一个网络传输协议)通信双方,当第一条RTP报文和第二条报文分别沿不同的NAT设备发往目标IP(对端),在目标IP上并不认为他是来自同一个对端而无法工作(源IP和端口都不同)。再比如telnet报文,第一条telnet报文和第二条报文分别沿不同的NAT设备发往目标IP(服务器server端),在目标IP上并不认为他是来自同一个对端(源IP和端口都不同)。由于多NAT的存在不论如何改进路由转发策略都是不能达到解决问题的目的。
由于以上分析,共享的设备来自不同的接入运营商,而一个共享客户端需要共享多个提供共享的设备资源,因此,多路由、多NAT的情况必然存在,以上问题必须解决。
发明内容
为了解决上述技术问题,本发明实施例提供了一种带宽共享方法,能够使得相同或不同接入网的用户之间实现业务流量分享,打破传统路由和多NAT带来的限制,达到扩展共享带宽的目标。
为了达到本发明实施例目的,本发明实施例提供了一种带宽共享方法,该方法包括:
通过预先设置的分布式系统DS在一个或多个家庭网络中发现和选定远程客户端RC和远程服务器RS;其中,DS为提供共享资源信息交换的系统,用于RC和RS针对共享资源的发布和提取;RC是使用共享带宽的设备,RS是提供共享带宽的设备;
RS在被选定后向DS发布用于共享的资源,并在每次资源变化时向DS更新资源状态;RC在被选定后通过DS获取特定数量的优化匹配的DS提供的一套资源集合,并且DS根据策略算法更新自身的资源状态信息库的资源状态和资源集合分发表;
RC从资源集合中选出一个或多个RS建立起共享通道;
当需要共享他人资源的家庭网络设备发送的特定报文被本地RC收到后,本地RC通过共享通道对特定报文进行传递;目的RS对接收到的所述特定报文根据需要进行源地址转换SNAT处理后发给目标地址,到达目标地址后目标地址针对该报文发出返回报文;返回的特定报文经RS发向本地RC再发回给对应的家庭网络设备;当所述本地RC使用完共享的资源后,主动释放所述共享通道和所述目的RS资源。
可选地,通过预先设置的分布式系统DS在一个或多个家庭网络系统中发现和选定远程客户端RC和远程服务器RS包括:
以(目的互联网协议DIP,目的端口DP,协议Protocol)三元组为一个目标协议探测点,根据家庭网络的配置,选择一个家庭网络设备作为探测设备,以该设备的本地IP作为源IP,以目标服务的测试设备的IP和端口作为目的IP和端口,并以家庭网络配置中的网关地址作为为下一跳路由地址发起协议报文,通过监测返回报文以判断所发起的协议是否可达,以实现探测地址可达性;当判定所发起的协议可达时,确定该家庭网络具备这种协议资源,能够继续布设RS软件于特定设备上或布设RS硬件设备,并判定所述布设的RS设备具备所述协议出口流量的资源
以(DIP,DP,Protocol,性能capability)四元组作为协议特性能力探测点,在可达性测试之后,向具备所述协议出口流量的RS设备发起能力测试报文,用于统计所述出口设备的该协议的性能;
根据可达性测试和能力测试形成一个家庭网络的探测资源列表:(设备_标识device_ID,Protocol,capability);并根据探测资源列表选定RC和RS;其中,探测资源列表中包括一个或多个资源表项的家庭网络选择为具有提供共享资源的RS角色,并且不论探测资源列表中是否包括资源表项,家庭网络都可以有RC角色。
可选地,该方法还包括:通过控制报文协议ICMP实现探测地址可达性,并通过所述RS的echo服务探测RC到RS之间的通道能力(包括带宽和其他QoS参数),以探测不丢包情况下或最大容忍的丢包率情况下的最大稳定带宽值和对应QoS值,实现能力测试。
可选地,该方法还包括:RS和RC分别异步地向DS发起资源发布和资源申请;
RS在被选定后向DS发布用于共享的资源,并在每次资源变化时向DS更新资源状态包括:
RS在上线、下线、资源分配和资源回收时触发资源状态变化操作过程;DS收到RS的资源状态变化消息时,如果确认RS为合法的,则进行自身的资源状态信息库的更新,其中,在RS和DS之间存在协商的周期确认消息,如果在任意一个周期内RS无周期确认消息发送到DS,则DS确认该RS上的资源暂时不可用,并更新自身的资源状态信息库;并且DS在收到RS发布的资源信息时按照RS的自身特性和RS提供的资源集合信息,对该RS进行资源集合分类排序;RS的自身特性包括:RS的IP源、接入网类型和接入网流量代价;
RC在被选定后获取DS提供的一套资源集合包括:
DS在收到RC的资源申请时,根据RC的资源申请和RC的自身特性,在资源状态信息库中根据预设的最优算法提供一套资源集合;其中,资源集合内的资源多于RC的资源申请中所申请的资源需求,以使RC根据资源集合内的资源信息和RC的选择策略优选出一组RS资源进行分享操作;
RC的自身特性包括:RC的IP源、接入网类型和接入网流量代价;
RC的策略参数包括:本地网代价以及本地到目的IP之间经过的传递点之代价总和以及业务服务质量(QoS)参数。
可选地,RC从资源集合中选出一个或多个RS建立起共享通道包括:RC按照并行处理能力大小从获得的资源集合中选出n个RS建立起共享通道;其中,n为RC的最大并行处理通道数;n为正整数;
RC按照并行处理能力大小从获得的资源集合中选出n个RS建立起共享通道包括:
RC在对资源集合中的资源根据给定策略进行排序后,向各个资源并行发送可达性代价探测;RC根据发送和收到报文的统计信息对多个RS进行可达性选择,从中选择出往返时间最少、接入网线路最小代价的共mn个RS,其中,m为大于1的放大倍数;
RC向选择出的mn个RS发起共享通道的连接请求,mn个RS根据预设的安全策略确定是否建立连接;
RC向建立连接的RS发起共享服务流量的QoS探测申请,并发起流量探测报文;建立连接的RS向流量出口转发所述流量探测报文;RC收到返回的报文后对此路径进行横向比较评估,并根据评估结果优选出n条共享通道。
可选地,该方法还包括:RC对共享的资源进行实时监控和评估,并替换已经恶化的资源;
其中,RC对共享的资源进行实时监控和评估包括:
RC维护mn个备选资源池,其中,所述n为所述RC的最大并行处理通道数;n为正整数;m为大于1的放大倍数;当预设的评估周期内x个共享通道的效率低于预设阈值时替换当前资源,替换资源数量为:min(x,y);x、y为小于n的正整数;其中,当y小于x时,在下一个评估周期到达时,重新评估需要替换的资源数量。
可选地,该方法还包括:
RS在接受不同RC的资源请求时,对不同RC的资源请求进行互斥和分时处理。
可选地,该方法还包括:当RC将报文并行分发给多个RS时,RC检测家庭网络设备发来的业务报文,并检出不同的会话session,按照不同的session进行报文重组并分发给最终设备。
可选地,报文的分发模式包括:应用层分发模式和报文高速分发模式;
应用层分发模式是指:RC或RS为应用层分发共享报文,向RS发送应用层报文,不改变RC或RS的原有路由信息;
报文高速分发模式是指:利用操作系统提供的驱动接口,实现通道驱动,模拟出家庭网络系统的接口设备,一个RC和RS对成为一个系统层面的网络接口,利用内核的策略路由进行报文分发。
可选地,该方法还包括:在RC和RS上设置组播代理M_Agent,M_Agent综合互联网组管理协议窥探IGMP snooping、互联网组管理协议代理IGMP proxy以及组播路由的功能,在组播协议IGMP方面,转发到多个共享通道上;在组播报文方面,分发到下联端口上;一个组播流就是一个单独的session。
可选地,所述方法还包括:在所属的RC、RS、DS、会话服务器SS以及资源转接器RR结合业务接入分布式服务访问控制DSAC形成各自独立的不同的业务网络;通过DS系统接入控制,可实现不同的业务的RS和RC处于不同的DS接入通道上,仅对该通道可见;
使用RS资源通过业务接入控制实现权限的限制,并通过业务计费实现权限计费。
可选地,所述方法还包括:通过增加会话服务器SS设备解决多共享路径网络地址转换NAT问题。
可选地,所述方法还包括:通过增加资源转接器RR设备解决跨接入网之间的业务流的分享带宽问题。
可选地,所述方法还包括:在共享通道上通过RC、RS、SS以及RR中的一种或多种,在以下一种或多种通道上实现支持组播业务流:单RS共享通道、多RS的多共享通道上以及RR组成的多接入网共享通道。
本发明实施例包括:通过预先设置的分布式系统DS在一个或多个家庭网络中发现和选定远程客户端RC和远程服务器RS;其中,DS为提供共享资源信息交换的系统,用于RC和RS针对共享资源的发布和提取;RC是使用共享带宽的设备,RS是提供共享带宽的设备;RS在被选定后向DS发布用于共享的资源,并在每次资源变化时向DS更新资源状态;RC在被选定后通过DS获取特定数量的优化匹配的DS提供的一套资源集合,并且DS更新自身的资源状态信息库的资源状态和预设的资源集合分发表;RC从资源集合中选出一个或多个RS建立起共享通道;当需要共享他人资源的家庭网络设备发送的特定报文被本地RC收到后,本地RC通过共享通道对特定报文进行传递;目的RS对接收到的所述特定报文根据需要进行源地址转换SNAT处理后发给目标地址,到达目标地址后目标地址针对该报文发出返回报文;返回的特定报文经RS发向本地RC再发回给对应的家庭网络设备;当本地RC使用完共享的资源后,主动释放共享通道和目的RS资源。通过该实施例方案,使得相同或不同接入网的用户之间实现了业务流量分享,打破了传统路由和多NAT带来的限制,达到了扩展共享带宽的目标。
本发明实施例的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明实施例的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明实施例技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明实施例的技术方案,并不构成对本发明实施例技术方案的限制。
图1为本发明实施例的带宽共享方法示意图;
图2为本发明实施例的单个接入网,多家庭设备时的家庭网络状况示意图;
图3为本发明实施例的多个接入网,多家庭设备时的家庭网络状况示意图;
图4为本发明实施例的相同接入网中在Internet云上以及接入网内布设DS系统示意图;
图5为本发明实施例的互联网流量出口由在同的接入网设备提供的情况下,在Internet云上以及接入网内布设DS系统示意图;
图6为本发明实施例的DS、RS、RC接口示意图;
图7为本发明实施例的家庭中RS、RC布设示意图;
图8为本发明实施例的共享资源发布和发现过程示意图;
图9为本发明实施例的建立合适的共享通道过程示意图;
图10为本发明实施例的家庭网络设备HD对应的IP为IP1发送包文给internet上的IP2时的过程示意图;
图11为本发明实施例的共享带宽使用阶段数据发送和接收示意图;
图12为本发明实施例的共享资源释放阶段正常释放过程示意图;
图13为本发明实施例的共享资源释放阶段异常释放过程示意图;
图14为本发明实施例的组播相关的M_Agent逻辑单元布设示意图;
图15为本发明实施例的处理IGMP协议时的M_Agent逻辑单元布设示意图;
图16为本发明实施例的处理组播报文时的逻辑单元布设示意图;
图17为本发明实施例的扩展长session类流量的带宽的结构布设示意图;
图18为本发明实施例的扩展长session类流量的带宽的方法示意图;
图19为本发明实施例的多接入网间共享宽带的结构示意图;
图20为本发明实施例的接入运营商交换业务流量应用场景下的第一种结构示意图;
图21为本发明实施例的接入运营商交换业务流量应用场景下的第二种结构示意图;
图22为本发明实施例的接入运营商交换业务流量应用场景下的第三种结构示意图;
图23为本发明实施例的用户自主行为的对等网络P2P流量分享应用场景下单接入网通道的共享示意图;
图24为本发明实施例的用户自主行为的对等网络P2P流量分享应用场景下多接入网通道的共享示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
为了达到本发明实施例目的,本发明实施例提供了一种带宽共享方法,如图1所示,该方法可以包括S101-S102:
S101、通过预先设置的分布式系统DS在一个或多个家庭网络中发现和选定远程客户端RC和远程服务器RS;其中,DS为提供共享资源信息交换的系统,用于RC和RS针对共享资源的发布和提取;RC是使用共享带宽的设备,RS是提供共享带宽的设备。
在本发明实施例中,提供了一种完整的方法给家庭个人用户,在不改变接入网运营商、业务运营商的任何网络设备情况下完成带宽的共享,使得缺少业务流量的用户能分享到他人的业务流量。本发明打破传统的系统转发规则,在不同的NAT上分发协议报文用以提高并发性,获得高共享带宽。对于缺少业务带宽的接入网运营商,提供了一种交换带宽的方法,可以在他的用户之间以及其他运营商之间交换流量。
在本发明实施例中,称那些提供共享带宽服务的设备单元为RS(Remote server),其家庭网络内需要至少有一个设备具备互联网出口并可被家庭网络内设备使用。这些设备可以提供共享的带宽的互联网出口流量代理。称使用RS共享出口代理服务的设备单元为RC(Remote client),RC是利用RS的代理互联网流量,RC设备可以布设在没有购买互联网业务的家庭,或者互联网业务带宽不足甚至互联网带宽相对昂贵想降低代价的家庭。称提供共享信息的设备单元为DS(Distribute server),DS是一个公共的服务设施,RS可以在DS上发布共享资源信息,RC可以在DS上获取资源信息,由于RS数量庞大,RC并不需要一次用到,因此DS可提供一种智能信息片段,根据RC来源和特性智能选择最优化的资源集合提供给RC。称提供共享互联网出口带宽session代理的设备单元为SS(Session server会话服务器,提供长session连接服务的设备)。RR:Remote Relay,远程中继,提供共享通道接续能力的设备。
在本发明实施例中,本文就用户如何通过相同接入网或不同的接入网分享(对冲)网络之间流量的方法进行说明。下文把家庭中接入到接入网的设备,选定作为流量分享的低价路径网关称为HGW(家庭网关,用户家庭使用它接入到接入网的设备),HGW可以是二层或是三层的网络设备,但都不影响本文所述的方法。
在本发明实施例中,家庭网络的状况可以如图2和图3所示,并不排除以下情形的多种混合:
第一种:单个接入网,多家庭设备。家庭单一的通过一个接入网运营商获得服务。单一接入网也可以提供多种业务,其底层通信方式为IP通讯。这个情况下,HGW都有数据通道到达接入网,部分家庭拥有ISP(互联网接入服务商)服务,而其他部分家庭不购买ISP服务但购买了其他类型的业务。
第二种:多接入网,多家庭设备。家庭通过不同的接入网运营商获得不同的价格不同服务质量的业务。每个接入到接入网的设备本质上说都可以是HGW,对于本文提到的共享方法,多个HGW和单个HGW在算法处理上并无差别。
在本发明实施例中,可以包括以下几种典型的共享设备在家庭网络中的布设逻辑,并不排除他们的混合模式,具体描述如下:
1)相同接入网中部分家庭具有提供特定网络流量共享的能力可布设RS,例如部分家庭购买了某种宽带服务(下文都以ISP服务为例,但不表示或暗示本方案仅限于Internet的接入服务),这样的家庭(即这个家庭的用户)的该接入网设备标注为“共享网关”(HGW/SG),是一类参与共享通道转发的HGW。在这个接入网中布设DS以发布和获取共享带宽服务信息。没有ISP服务的家庭网络设备需要上网时,数据经由本地RC到本地HGW,再由HGW经过这个接入网到达对方HGW的RS,由这个RS通过他的HGW的上联出口上网,然后原路返回给没有ISP服务的家庭网络设备。注意,一个RC可以分发数据给多个RS以提高共享带宽。更为广泛的场景是所有家庭都购买了ISP业务,但相比于其他接入网的ISP服务昂贵而想降低业务使用代价的,这个情况下可在Internet云上以及接入网内布设DS系统,如图4所示。
2)互联网流量出口不在相同接入网设备提供的情况。一方面,参与共享和被共享的家庭可通过某个或某几个接入网互相通讯,这个参与的共享通道的网关叫做HGW;另一方面,提供共享的家庭由其家庭网络中的其他接入网关提供Internet上网流量,称为HD/SG(home device/shared gateway,不参与共享通道的HGW)。例如另外的几个接入网关提供,或由手机/无线接入点等其他设备提供互联网上网流量。这个情况下,需要共享他人流量的一个家庭的家庭网络设备(甲方)需要上网时,报文经由甲方本地的RC到达甲方本地HGW,再由接入网到达乙方的HGW,经过乙方的RS分发到HD/SG设备上,由此上网,其返回数据沿原路发回,如图5所示。
在本发明实施例中,我们可以把以上的设备归纳为以下模型,分3类角色:DS、RS、RC,分别对应于3类设备:共享服务单元、提供共享带宽的设备、使用共享带宽的设备。如图6所示,在不同的设备之间定义了3个接口:A接口是使用共享带宽的网关和共享服务单元之间的接口,(RC-DS接口),B接口是提供共享带宽服务的设备和共享服务单元之间的接口,(RS-DS接口),C接口是使用和提供共享带宽设备之间的接口,(RC-RS接口)。
在本发明实施例中,抽象出的通用布设逻辑可以包括:
1、共享通道:由参与共享的设备相互建立连接构成,其中,RC和RS是共享通道的两个端点;通过各自家庭的HGW借助各自接入网建立起双方家庭的共享通道。
2、HGW:分为参与共享通道的HGW/SG和HD/SG,HGW/SG提供共享通道的实际转发实体;HD/SG提供业务流量的实际转发实体。
3、RC:提供共享业务流量的客户端转发和接收报文服务,他能保证对家庭内的设备透明,即家庭设备并不感知新的特定设备类型的存在,不需要做特定的协议修改。
4、RS:RC的远端服务设备,和RC交互,把RC和RS通道内的业务流量转发到和接受自实际业务流量出口(HD/SG)。
5、HD:泛指家庭网络设备,是家庭内使用业务流量的设备。
6、DS:提供了共享资源的信息发布和提取的平台,共享资源的拥有者可以向此平台发布共享资源信息。共享资源的接收者,可以向该平台申请提取相关资源信息。
一个家庭可以既有RC也有RS、HD/SG设备,这种既作为资源提供也作为资源使用是很常见的分享系统的布设状态,如图7所示。
在本发明实施例中,基于上述的布设逻辑,下面进一步对本发明方案中的角色进行介绍:
(1)共享网关:
被选定作为共享带宽的网关设备(通常是可通过特定的软件或硬件附加实现RS、RC功能)。当接入网关是3层设备时,共享网关就是接入网关本身;当接入网关是2层设备时,接入的家庭网络设备具备3层属性,因此,该设备就成为共享网关;比如家庭内直接用PC上网时的PC设备,通过DSL上网时的二层DSL猫后的通用路由器、EoC上网时的在二层光猫后的路由器设备等等。
(2)DS系统:
接收RS的资源发布信息,资源信息包含资源类型、资源能力、资源状态(已分配的客户端和其占用资源大小、未分配的资源能力),智能获得该资源所属的接入网类型,接入网代价等信息。接收RC的资源分配请求,根据系统策略智能分配最佳的RS集合给RC,根据RS的更新报告更新资源分配信息。
(3)RC:
通过DS地址发现DS服务。当需要时发起RS申请,包含申请的资源类型,资源能力需求。在获得RS资源集合后,根据策略对RS进行评估,从RS可达性/接入代价/出口代价/出口类型/出口带宽等信息进行策略判断,选择N个RS进行上网数据分发和接收。其中包含多个阶段:DS发现和RS信息交互阶段、RS评估和资源申请阶段、共享带宽使用阶段、共享资源释放阶段。详细过程由下面的流程图描述。
(4)RS:
通过DS地址发现DS服务。RS启动时向DS系统发布资源信息,当接收到RC的资源申请后根据策略接受和拒绝申请,一旦接受申请,则向DS系统发布资源更新信息。在接受RC的资源申请后给RC提供共享流量服务。其中包含多个阶段:DS发现和RS信息交互阶段、RC申请评估和资源分配阶段、共享带宽使用阶段、共享资源释放阶段。详细过程由下面的流程图描述。
(5)HD/SG
RS的真正的业务流量出口设备。
在本发明实施例中,通过RC和RS之间建立共享通道,RS提供共享流量,从而使得RC家庭网络内的网络设备获得这种共享流量包含的服务,就像他自己家庭购买了这些服务一样,家庭网络内设备对这些共享通道共享方法并不感知。DS是辅助设施,用于RC能发现可能提供共享服务的RS。
在本发明实施例中,DS系统如何布设不在本文讨论范围之内,布设好的DS系统如何被RS、RC使用是第一个要解决的问题。对于Peer型的DS系统,可通过设置DS服务为组播地址方式、或地址段范围搜索方式进行DS自动发现。对于非peer型DS系统还可以通过人工和设定和管理通道设置的方式发现。
在本发明实施例中,Peer型是指通过动态的自动发现DS机制,DS、RS、RC实体之间通过本描述方法达到自动发现、配置、使用的目标,本说明的后续描述以此为主。非Peer型的是指无自动发现DS机制,DS需要手动设置的方法,可以认为是peer型的一种特例。
在本发明实施例中,在家庭内探测互联网出口、接入网特性、发现DS系统之后,可选定相应的设备作为RC,或者即作为RC又作为RS的角色,根据接入网特性设定HGW。
在本发明实施例中,通过预先设置的分布式系统DS在一个或多个家庭网络系统中发现和选定远程客户端RC和远程服务器RS可以包括步骤S201-S203:
S201、以[目的互联网协议地址DIP(目的IP),目的端口DP,协议Protocol]三元组为一个目标协议探测点,根据家庭网络的配置,选择一个家庭网络设备作为探测设备,以该设备的本地IP作为源IP,以目标服务的测试设备的IP和端口作为目的IP和端口,并以家庭网络配置中的网关地址作为为下一跳路由地址发起协议报文,注意,应充分考虑到部分家庭网络具备多出口网关配置并可能使用策略路由进行报文转发,通过监测返回报文以判断所发起的协议是否可达,以实现探测地址可达性;当判定所发起的协议可达时,确定该家庭网络具备这种协议资源,能够继续布设RS软件于特定设备上或布设RS硬件设备,并判定所述布设的RS设备具备所述协议出口流量的资源。
在本发明实施例中,(DIP,DP,Protocol)三元组为一个目标协议探测点,一个协议可选择已经确认的几个点为探测判定集合,因此不同的协议就会有多组这样的探测集合。在家庭网络中采用人工或者软件自动化方法,用家庭网络本地IP作为源IP,以家庭网络中的网关地址为下一跳路由,以探测点IP和端口为目标,分别发起协议报文,通过观察返回报文以判定该协议是否可达。可选地:下一跳路由选择有3中方式:第一,可以是人工根据家庭网络配置信息选择下一跳路由,常见的家庭网络路由方式是缺省网关、策略路由的下一跳路由地址;第二,对家庭网络这个特定网段进行全覆盖自动探测,目标地址是外网地址,下一跳路由地址是家庭网络全网段,根据返回报文和跳点轨迹,比如linux下的traceroute命令返回或者等效的windows下的tracert命令返回来判定是否是合适的下一跳路由,第三,由家庭网络提供的DHCP功能中获得。
在本发明实施例中,举例说明,假设已知探测点IP2支持UDP协议探测,它提供端口7的UDP echo服务。则可在家庭网络内选择设备1(PC或者某个特定RC/RS设备)以家庭网络内设备2(一般是家庭网络中的网关设备)为下一跳路由,向IP2发起UDP echo的报文(源IP是IP1,源端口随机,目标IP是IP2,目标端口7,协议UDP,源MAC是家庭网络设备1的MAC,目标MAC是家庭网络设备2的MAC),如果收到UDP报文,并且报文内容符合UDP echo协议要求,则判定该设备具备UDP出口流量的资源。
S202、以(DIP,DP,Protocol,性能capability)四元组作为协议特性能力探测点,在可达性测试之后,向具备协议出口流量的资源的出口设备发起能力测试报文,用于统计出口设备的该协议的性能。其中DIP字段以IP地址/IP地址段加netmask形式描述可达性。
在本发明实施例中,(DIP,DP,Protocol,capability)四元组是描述协议特性能力以下称为Share_capability,在可达性测试之后发起能力测试报文,用于统计此出口设备的该协议的特性能力(capability),包含有(bandwith:带宽,delay:时延,jitter:抖动,lost:丢包率)。Protocol包含UDP、ICMP、TCP、Multicast、ALL(特定表示以上协议的混合流量测试)。
S203、根据可达性测试和能力测试形成一个家庭网络的探测资源列表。一个资源表(RS_table)由多个资源表项(RS_item)构成,一个资源表项由(RS_ID,RS_SAP,RS_DSAC,protocol,Share_capability)表示,资源表项是可提供共享资源的描述,一个表项代表一个可用资源。RS_ID表示可提供资源的RS设备唯一标识,RS_SAP是RS的提供服务的内网可达IP和端口,RS_DSAC是RS的接入控制描述,用于表示这个资源服务的客户群体接入控制特征,Protocol表示可提供共享资源的协议类型,capability表示可提供的资源的性能信息;其中,能提供共享资源服务的家庭网络可选择为具有RS角色,并且不论探测资源列表中是否包括资源表项,家庭网络都可以有RC角色。
在本发明实施例中,一个家庭形成一个探测时实时动态的资源表,每个具备可提供资源的设备对应以一个资源表描述所有可提供的资源。根据这个探测列表结果就可以进行RS角色选择和设置,例如设置特定的资源接入控制方法RS_DSAC,具有一到多个资源表项的设备设置为RS角色提供共享资源。不论是否具有资源表项的家庭都可以设置RC角色。
在本发明实施例中,选择具有RS角色的家庭可以设置所能使用的资源和所使用资源的比例用于共享,以一个(RS_ID,RS_SAP,RS_DSAC,protocol,Share_capability)的表项描述。他可以给DS系统以及作为本地资源共享控制功能实体使用。资源的特性能力可能随着接入网的时间变化也会有变动,因此,可在DS交互阶段定义资源重新评估的周期以及按需评估消息。RC的共享资源需求表和RS的共享资源描述类似,例如:(RC_ID,RC_DSAC,(protocol,Share_capability))。其中,RC_ID:RC的唯一标识。
S102、RS在被选定后向DS发布用于共享的资源,并在每次资源变化时向DS更新资源状态;RC在被选定后获取DS提供的一套资源集合,并且DS更新自身的资源状态信息库的资源状态和预设的资源集合分发表,具体的共享资源发布和发现过程如图8所示。
可选地,该方法还包括:RS和RC分别异步地向DS发起资源发布和资源申请。
可选地,RS在被选定后向DS发布用于共享的资源,并在每次资源变化时向DS更新资源状态可以包括:
RS在上线、下线、资源分配和资源回收时触发资源状态变化操作过程;DS收到RS的资源状态变化消息时,如果确认RS为合法的,则进行自身的资源状态信息库的更新,其中,在RS和DS之间存在协商的周期确认消息,如果在任意一个周期内RS无周期确认消息发送到DS,则DS确认该RS上的资源暂时不可用,并更新自身的资源状态信息库;并且DS在收到RS发布的资源信息时按照RS的自身特性和RS提供的资源集合信息,对该RS进行资源集合分类排序;RS的自身特性包括:RS的IP源、接入网类型和接入网流量代价。
在本发明实施例中,RS在上线(RS启动并探测到HGW/SG、HD/SG资源可用时)、下线、资源分配、回收时触发资源状态变化操作过程。DS收到这些消息时,进行必要安全处理,如果是合法的RS,则进行资源状态信息库的更新。另外,在RS和DS之间存在协商的周期确认消息,如果RS在某个周期内时间内无周期确认消息发送到DS,则DS认为该RS上的资源暂时不可用,更新DS内的资源状态信息库。
DS在收到RS发布的资源信息时按照RS的IP源、接入网类型、接入网流量代价等结合RS提供的资源集合信息,对该RS进行资源集合分类排序。
可选地,RC在被选定后获取DS提供的一套资源集合可以包括:
DS在收到RC的资源申请时,根据RC的资源申请和RC的自身特性,在资源状态信息库中根据预设的最优算法提供一套资源集合;其中,资源集合内的资源多于RC的资源申请中所申请的资源需求,以使RC根据资源集合内的资源信息和RC的预设策略优选出一组RS资源进行分享操作;
RC的自身特性包括:RC的IP源、接入网类型和接入网流量代价;
RC的预设策略包括:本地到对方的代价和服务质量QoS探测。
在本发明实施例中,RC可以有多种策略获得和更新资源集合。第一种可以在上线(RC启动并探测到HGW/SG可用时)、下线、以及后续周期性更新资源信息。第二种是按需申请资源信息。当RC启动后探测到HGW/SG可用并且仅当家庭网络内的设备发送特定业务流量被RC检测出时去申请资源集合。
DS在收到RC的资源申请时,根据RC的资源申请、RC的IP源、接入网类型、接入网代价等,在其资源数据库中根据最优算法提供一套资源集合,并更新资源状态和资源集合分发表。该集合内的资源远多于RC申请的资源需求,而且在该集合内的资源并不表示直接分配给这个申请的RC,RC根据集合内的资源信息结合RC的策略和本地到对方的代价和QoS探测等信息优选出一组RS资源进行分享操作。
以上看出DS和RC、RS是一种松散耦合系统,RC本身在使用资源时是根据实时的资源能力探测的结果进行选择,DS提供的是一个潜在的可能的集合。
S103、RC从资源集合中选出一个或多个RS建立起共享通道,具体的建立合适的共享通道过程如图9所示。
可选地,RC从资源集合中选出一个或多个RS建立起共享通道包括:RC按照并行处理能力大小从获得的资源集合中优选出n个RS建立起共享通道;其中,n为RC的最大并行处理通道数;n为正整数。
在本发明实施例中,RC在获得共享资源集合后可根据预设策略探测合适的RS建立共享通道。其中包含可达性代价、线路分享代价、线路带宽效果、安全认证授权等过程。
可选地,RC按照并行处理能力大小从获得的资源集合中优选出n个RS建立起共享通道可以包括S301-S303:
S301、RC在对资源集合中的资源根据预设策略进行排序后,向各个资源并行发送可达性代价探测;RC根据发送和收到报文的统计信息对多个RS进行可达性优选,从中选择出往返时间最少、接入网线路最小代价的共|mn|个RS,其中,m为大于1的放大倍数,|mn|是对mn进行取整。
在本发明实施例中,在资源集合中根据预设策略排序后并行发送可达性代价探测,具体地,RC使用RS预定义的探测端口号分别发送UDP和TCP报文,RS收到报文后复制报文内容立即发回RC,RC根据发送和收到报文的统计信息对RS进行可达性优选,从中选择出往返时间最少,接入网线路最小代价的共|mn|个RS。
S302、RC向选择出的|mn|个RS发起共享通道的连接请求,|mn|个RS根据预设的安全策略确定是否建立连接。
在本发明实施例中,RC向这些选择出的RS发起共享通道的连接请求,RS根据预定义的安全机制进行鉴别,如果允许则建立连接。建立共享通道后双方可协商一种通道维护机制。其中,该安全机制可选择的技术很多,包括但不限于:证书体系,预共享密钥、单点登录实时令牌方式等等,这里不再一一赘述。
S303、RC向建立连接的RS发起共享服务流量的QoS探测申请,并发起流量探测报文;建立连接的RS向流量出口转发所述流量探测报文;RC收到返回的报文后对此路径进行横向比较评估,并根据评估结果优选出n条共享通道。
在本发明实施例中,RC向RS发起共享服务流量的QoS探测申请,发起流量探测报文。RS向流量出口转发报文,之后RC收到返回的报文,对此路径进行横向比较评估,最后根据评估结果优选出n条共享通道。RC向这些RS发起共享通道资源申请,RS进行应答确认后向DS系统发起资源变更消息。
可选地,该方法还包括:通过控制报文协议ICMP实现探测地址可达性,并通过RS的echo服务探测RC到RS之间的通道带宽和QoS参数,以探测不丢包情况下或最大丢包率情况下的最大稳定带宽值和对应QoS值,实现能力测试。
在本发明实施例中,总结步骤S101和步骤S103可知,步骤S101是对RS的初选策略,步骤S103是对RS的终选策略,RS的具体选择算法可以包括:地址探测(步骤S101)和资源评估(骤S103)。
地址探测:可利用ICMP探测地址可达性,再利用RS的echo服务探测RC到RS之间的通道带宽和QoS参数(时延、抖动、丢包率),探测不丢包情况下或最大容忍丢包率情况下的最大稳定带宽值和对应QoS值。RS初选策略可以看作是“通道最大稳定带宽、对应QoS值、RS声称资源剩余能力、通道代价”的选择函数。在RC获得的资源集合中假设有S个RS备选,经过初选后选出mn个RS进入资源评估,其中n是RC的最大并行处理通道数,m是放大倍率。
资源评估:RC利用特定的业务报文经由RS探测到达目标业务网络的最大稳定带宽和对应的QoS参数。RS终选策略可以看作是“业务流最大稳定带宽、对应QoS值通道代价+出口代价”的选择函数。最后在mn个RS中选择最优的n个RS建立共享通道。
S104、当需要共享他人资源的家庭网络设备发送的特定报文被本地RC收到后,本地RC通过共享通道对特定报文进行传递;目的RS对接收到的所述特定报文根据需要进行源地址转换SNAT处理后发给目标地址,到达目标地址后目标地址针对该报文发出返回报文;返回的特定报文经RS发向本地RC再发回给对应的家庭网络设备;当所述本地RC使用完共享的资源后,主动释放所述共享通道和所述目的RS资源。
在本发明实施例中,以家庭网络设备上网为例,家庭网络设备发送上网报文被RC接收,RC根据策略判断此报文走共享通道,RC通过家庭网络或者内部通道到本地的(RC所驻留的)HGW(甲方家庭网关),报文经由HGW所在的接入网投送到RS所在的HGW(乙方家庭网关)。乙方家庭网关把报文发送给目标RS。目标RS解开通道封装信息还原了原始目标地址后向本地的互联网出口设备(HD/SG)发送该报文。在RC/RS高速转发模式下,为了让返回的报文能沿原路径返回,需要对该进行特定的报文处理,在HGW、RS上要进行的了SNAT转换。对于RC/RS应用层转发模式,已经对RS发给目标地址的报文进行了应用层替换,因此该报文的源IP地址已经是RS的地址,RS的应用层保留RC源IP和端口、原始源IP和端口,RS发包IP和端口的映射关系,以便于返回报文的还原。实际上是在应用层执行了SNAT的功能逻辑。
在本发明实施例中,如图10所示,以家庭网络设备HD,对应的的IP为IP1发送包文给internet上的IP2为例说明原理;其他设备的IP分别标注在途中设备下。图10展示IP层报文共享通道打包拆包,SNAT处理以及路由寻径逻辑,仅描述IP报文的核心5元组和报文内容(payload)逻辑。其中不展示原始报文因为MSS需要分段的情况,因为分段不改变这个核心逻辑。返回的报文按照发送的报文逻辑解开就能按原路返回。注:当RC布设在HGW上时,可省略步骤2和步骤11,当RS布设在HGW上时,可省略步骤4和步骤9。
在本发明实施例中,增加了图10的业务数据处理过程文字描述如下:
以下以RC/RS单独布设为例,单RC和HGW布设在一起时,第2步骤属于HGW内部操作。单RS布设在HGW上时,第4步骤属于内部操作。
第一步:HD组装正常的报文,HD按照下一跳路由是RC的规则递交该报文给RC。HD可通过设置策略路由把RC设置成下一跳路由来完成此目标。该报文的SIP、Sport是HD的源IP和源端口,记为IP1,P1。目标IP和端口是IP2即目标的IP和端口,记为IP2,P2,填写的协议是双方通信的协议记为X。
第二步:RC通过RS的资源信息组装报文,其中目标IP和端口填写的是RS的IP和端口,注意,此时的RS如果是在家庭网内部,它是通过他的家庭网关进行NAT地址转换的,因此,表面上是该家庭网关的接入网IP和NAT分配给RS的端口,记为IP6和P6。IP报文的源IP和端口是RC的IP和端口,记为IP3和P3。此时,RC和RS之间有可能通过其他有别于原始通信协议建立通信,因此,协议域记为Y。原始的IP1发给IP2的整个IP包被作为新IP包的载荷封装在这个新IP包里。RC记录(IP3,P3,IP1,P1,IP2,P2)以及和RS建立的session信息便于反向报文的恢复。由于RC是在家庭网络内,因此,他要根据家庭网络的配置,把该报文发给家庭网关HGW由HGW进行下一跳转发。
第三步:HGW按照正常的数据NAT/转发规则进行处理。IP4是其内网的地址,IP5是其接入网地址,家庭网是家庭网络和外界的桥梁,他在家庭网络中有一个地址在接入网中有一个地址。经过HGW的NAT处理后,报文的源IP和端口替换为HGW的接入网IP和NAT功能分配的端口,记为IP5,P5。转发给RS所在的HGW。转发过程根据接入网网络配置,中间经过接入网的路由最后转发到RS所在的家庭网关。
第四步:RS所在的HGW收到该报文后通过NAT规则替换了目标IP地址和端口为RS的IP和端口,记为IP8,P8。替换后根据家庭网络的配置,HGW把该报文发给RS。
第五步:RS根据该业务和RC建立起来的所属的session属性提取原始载荷内容,恢复出原始的IP包的协议X。根据从HGW发来的报文的(IP5,P5,y)三元素进行SNAT处理得到(IP8’,P8’,x)的映射后三元素,用IP8’,P8’,修改原始报文的源IP和源端口,以及相应的报文完整性校验值后发给IP2。RS记录RC/RS的session和对应的(IP8,P8,IP5,P5,y:IP2,P2,IP1,P1,x)到(IP8’,P8’,IP2,P2,x)之间的映射关系用于返回报文的逆向打包。由于RS是在家庭网络内部,因此,它的下一跳路由转发规则需要符合家庭网络配置,一般来说可采用策略路由的方式设置到特定业务网段的策略路由。注:根据家庭网络的实际布设设置,IP8往往等于IP8’。注:HD/SG的IP地址在家庭网络内部和业务网侧的IP有可能也是有区别的,这取决于具体的网络配置,这里以IP9,P9代表,如果有家庭网络和业务网两个不同的IP,参照HGW的处理方式进行,以下第六步以及逆向处理也是如此,不再赘述。
第六步:提供业务网络流量的设备HD/SG转发RS发出的业务数据包到IP2。此时,HD/SG根据业务网络的配置一般会对RS发出的报文进行NAT处理。因此,HD/SG修改RS发出的IP包,使用NAT分配结构(IP9,P9)对IP8’,P8’进行修改。向IP2发出修改后的数据包。
IP2返回的数据包经过相反的数据路径,经过NAT的逆过程分别到达RS和RC,其中RS根据对应的session进行报文修改和封装。RC根据session信息提取内层载荷,并还原IP1,P1,x值发给IP1。以下是返回报文处理:第7到12步,对应于第6到第1步的逆向处理的说明:
第七步:IP2返回报文目标地址和端口填写的是(IP9,P9),协议x。源Ip和端口为IP2的IP和端口,记为(IP2,P2),该报文经过中间的多个路由发往IP9.
第八步:HD/SG收到报文后根据NAT的映射表,修改目标IP和端口为(IP8’,P8’)然后转发修改后的报文给RS。
第九步:RS根据收到的报文查找第五步记录的:“RC/RS的session和对应的(IP8,P8,IP5,P5,y:IP2,P2,IP1,P1,x)到(IP8’,P8’,IP2,P2,x)之间的映射关系”使用IP1,P1替换收到报文的IP8’,P8’,把修改后的报文作为载荷封装在RS返回RC的报文中。RS发送个RC的IP包的目标地址端口为IP5,P5,(这是RC在HGW上的NAT转换后的可达地址)。源地址和端口为IP8,P8。协议为该RC/RS的session的选定协议y。RS根据家庭网络配置,把该报文发给下一跳路由图中的IP7。
第十步:RS侧的HGW根据NAT规则,对该报文进行源地址和端口修改,源地址和端口改为HGW上的IP和端口。按照路由规则发给接入网,最终转发到RC侧的HGW。
第十一步:RC侧的HGW根据NAT规则和记录把收到的该报文的目标地址和端口还原为RC的地址和端口,转发给RC。
第十二步:RC根据RC/RS的session信息提取出内层IP报文,并根据内层IP包的目标地址信息(IP1,P1,)信息转发内层报文给IP1。
在本发明实施例中,下面分别从共享带宽使用阶段和共享资源释放阶段两方面进行说明:
1、共享带宽使用阶段,数据发送和接收示意图如图11所示。
在本发明实施例中,当家庭网络设备发送特定业务报文时,RC收到后进行SNAT处理,保证返回数据由RC处理;之后根据共享通道负载情况分配一个通道,记录无元组和通道关系表,以便后续相同无元组的报文走相同的通道。发送报文进双方的HGW/SG到达RS。RS收到报文经过SNAT发给本地出口设备发给上联设备,比如BRAS(Broadband Remote AccessServer,宽带远程接入服务器),返回报文沿相同路径返回给HD。
可选地,该方法还包括:RC对共享的资源进行实时监控和评估,并替换已经恶化的资源;
其中,RC对共享的资源进行实时监控和评估包括:
RC维护y=|mn|个备选资源池;当预设的评估周期内x个共享通道的效率低于预设阈值时替换当前资源,替换资源数量为:min(x,y);x、y为小于n的正整数;其中,当y小于x时,在下一个评估周期到达时,重新评估需要替换的资源数量。
在本发明实施例中,RC在使用共享通道的过程中实施资源状态动态评估,在资源集合中探测多于实际使用共享通道数量的RS资源,在RS资源恶化到切换临界时更换该通道。具体地,RC可以维护y=|mn|个备选资源池。当评估周期T内x个共享通道的效率低于阈值时替换资源,替换资源数量为:min(x,y)。当y小于x时,说明本次替换的资源数量不足,在下个评估周期到达时,重新评估需要替换的资源数。如果上次替换的资源可用,则x的值将不断减小并趋于优化稳定。如果x值不能减小,则说明该网络异常,不断替换的资源无法满足Qos需求。
可选地,该方法还包括:当RC将报文并行分发给多个RS时,RC检测家庭网络设备发来的业务报文,并检出不同的session,按照不同的session进行报文分发。
可选地,该方法还包括:RC和RS以及RC和SS之间的共享通道内实施流量控制。根据滑动窗口协议进行数据包的顺序重组转发以及重传。
在本发明实施例中,当家庭网络设备发送特定业务报文后,RC向建立了共享通道的各个RS进行报文分发时,需要解决以下两个最主要问题:
第一,防火墙、主机逻辑是有状态的:例如,服务器识别客户端的最主要最常见的方式是对端的IP和端口以及协议。
第二,NAT有状态:通常常见的Internet报文要经过多级的路由器、NAT设备。NAT特别是NAPT设备是典型的具有状态属性的,例如NAPT内网的设备发往外网,返回的报文只有相同的NAPT才能找到原发端。(因为只有这个NAPT保留这一次的内网外网的映射关系)。通常家庭网络设备如果是3层的,上网接口一般都是做了NAPT转换的,因此,当利用他们作为共享带宽的出口使用时,返回的报文必须经过这个设备才能到达原始的发送实体上,另外,不同的接入网到互联网之间也存在多级NAPT以解决IPV4地址不足问题,因此,一旦从家庭设备发出的报文经过这些设备后必须原路返回。
在本发明实施例中,基于上述问题,RC在报文分发时如果随意的把报文发给不同的RS,返回的数据就会出现问题。例如,使用SIP协议进行通话时,假设RTP报文流到达对方是经过不同的RS发出的,所以,这些报文到达对方主机时通常是具有不同的源IP和端口,严格的防火墙是会按照本机发出的RTP报文提取5元组放行通过的,所以这些报文必然有大多数被阻挡。即使不被防火墙阻挡到达了主机UDP(User Datagram Protocol用户数据报协议)协议栈时也会被丢弃大部分,因为那些非SIP协议协商过程中指定的对端IP和端口的报文都会被丢弃,主机识别不出他具体属于哪个socket应用来处理。对于TCP(TransmissionControl Protocol传输控制协议)协议为基础的通讯就更加明显,TCP典型的需要经过3次握手,双方都绑定接收对方的IP和端口,和上面的原因一样防火墙和主机都会丢弃大部分的报文。
在本发明实施例中,为了解决上述问题,在进行多RS并行分发时可以按照会话session进行分发:例如,Session:(sourceIP,destinationIP,sourcePort,destinatoonPort,Protocol)。RC检测家庭网络设备发来的业务报文,检出不同的session,按照session进行分发。往往session的检测需要从应用层分析得到,比如VOIP(网络电话,Voice over Internet Protocol)常见的协议SIP、H323等他们的媒体流都是有session的,而其session信息由应用协议携带。RC在高速转发数据时要打开应用协议进行分析需要很大的CPU,因此代价相当高。一种使用session超时机制来近似识别不同session的方法:Session:(sourceIP,destinationIP,sourcePort,destinatoonPort,Protocol,sessionType,duration),对不同类型的session设定合理的观察周期,在观察周期时间点查看有无该session报文,如果没有则认为该session已经消亡。后续的相同5元组是另外一个session。
可选地,报文的分发模式可以包括:应用层分发模式和报文高速分发模式。
应用层分发模式是指:RC为应用层分发共享报文,向RS发送应用层报文,不改变RC的原有路由信息。
在本发明实施例中,RC为应用层分发共享报文,它向RS发送应用层报文,不改变RC的原有路由信息。RC可以分别和多个不同的RS建立分享通道,把报文分享到这些RS上以提高整体带宽。RS收到分享通道的报文后向互联网出口发送经过NAT之后的报文,以便该报文能原路返回。
报文高速分发模式是指:利用软件实现通道驱动,模拟出家庭网络系统的接口设备,一个RC和RS对成为一个系统层面的网络接口,利用内核的策略路由进行报文分发。
在本发明实施例中,利用软件实现通道驱动,模拟出系统的接口设备,在系统内核层面看到的是一个新的接口,一个RC和RS对成为一个系统层面的网络接口,因此,可利用内核的策略路由进行分发。此情况下原有的家庭网络的路由信息需要更新,这一点将在下文中详细讨论。为进一步提高虚拟接口效率,可以把虚拟接口的驱动加以硬件固化。
报文高速分发模式时对家庭网络的路由配置修改:
由于RC和RS采用了高速转发模式,系统增加了网络接口,因此路由设备的子接口增加了,路由表发生了变化。新增的虚拟接口逻辑上都是缺省路由,因此,需根据前述策略在这些缺省路由上分别分发报文。另外,由于原有的接入网也可能采用缺省路由的形式,因此,两类缺省路由需要有策略明确的区分,以下就描述这种策略。
1)包含RC的家庭网络设置
①、RC布设在HGW上时:
对于HGW和RC之外的家庭网络设备,路由信息不变。
RC/HGW实体需根据目标地址进行路由选择,目标地址是公网地址的,选择从虚拟的接口路由出去;如果这些接口有多个,则根据前述分发算法进行策略性分发;目标地址是私网地址的选择从HGW的原有路由发送。
②、RC不布设在HGW上时:
第一种办法:
对于HGW和RC之外的家庭网络设备,修改缺省路由到RC上。
RC实体需根据目标地址进行路由选择,目标地址是共享业务流的,选择从虚拟的共享接口路由出去;如果这些接口有多个,则根据前述分发算法进行策略性分发;目标地址是私网地址的发送给HGW。
HGW的路由信息不变。
第二种办法:
对于HGW和RC之外的家庭网络设备,需要共享某种业务时,设置该种业务的策略路由到RC上,其余数据流的路由不变。
RC、HGW的路由信息设置同上。
2)包含RS的家庭网络设置
①、RS布设在HGW上时:
对于HGW/RS之外的家庭网络设备,路由信息不变。
HGW/RS需要基于接口的路由选择。来自虚拟接口的报文的缺省路由为提供互联网出口的设备IP地址。其他接口的报文的路由还是按照原有的路由处理。
②、RS布设在家庭网络内时:
除RS之外的设备路由信息不变。
RS需要基于接口选择报文路由。来自虚拟接口的报文的缺省路由为提供特定共享业务出口的设备IP地址。其他接口的报文的路由还是按照原有的路由处理。
3)同时包含RC和RS的家庭网络设置
分别按照上述的1)、2)两种情况下的设置方式进行设置即可。
Session加速方法可以通过下述方案实现:
在本发明实施例中,一般来说,通用操作系统是分层处理IP报文的,先判断链路层报文的转发,如果目的MAC是本机,则交由上层协议单元进行处理。上层协议单元就是IP层协议,根据目的IP进行分发,如果目的IP是本机,则交由上层协议单元处理,如果不是,则查找路由信息进行该报文转发。这种处理路径太长,可以通过硬件或者驱动软件直接提取IP层和MAC层报头信息来加速这个处理过程。RC/RS/SS设备在网络接口收到报文后查看(SIP,SP,DIP,DP,protocol:SMAC,DMAC)通过学习来形成快速处理和快速转发规则,后续报文可进行快速处理和转发。快速处理指根据学习的规则直接修改MAC层和IP层报文,使之符合转发规则。快速转发指:直接从源接口向目标接口转发,中间不经过操作系统其他环节。
可选地,该方法还包括:RS在接受不同RC的资源请求时,对不同RC的资源请求进行互斥和分时处理。
在本发明实施例中,RS可以看成整个系统的分布式临界资源。它发布资源能力时资源使用未被改变。当多个RC同时申请使用时,如果信息不同步就可能造成实际能力和RS声称剩余能力或者RC实测过能力之间的差距。因此,RS在接受地址探测时,以及RC的资源探测时,需要对不同的RC的探测请求进行互斥和分时处理,对RC的资源使用申请进行互斥操作。
举例说明如下:假设RS1探测总共有10M出口带宽用于带宽共享。RC1申请复用型带宽10M请求到达后RC2申请1M独占型带宽请求到达,此时,按照分配事务先处理RC1请求,10M共享带宽分配给RC1,则RC2请求得不到满足应拒绝。然后RC3申请2M共享型带宽分享。则可接受此请求。
在本发明实施例中,共享性带宽可分配给多个RC分享使用,最大分享客户端根据RS的实时统计信息和系统性能决定。共享带宽的特点是RC使用RS的带宽不是平稳的每时每刻都是需求的那么多,所以可供多个客户端复用。RS一般有一个实测系统负载和统计带宽利用率,可实时观测已有分享是否达到资源上限。独享型带宽是RS单独划分给特定的RC使用,具有带宽保留的能力,即使RC不使用RS也为此预留声称的带宽。RC应根据检测出的业务流特性申请合理的带宽预留或共享资源。
2、共享资源释放阶段,正常释放过程和异常释放过程分别如图12和图13所示。
当RC使用完或者发现有更好的替代资源时,可主动释放共享通道和RS。另外,由于网络的复杂性,RC和RS之间异常中断后,RS经过检测发现共享通道需要显式释放以利于更高效的资源复用。不论哪种条件下释放,当RS确认资源释放后可向DS发起资源更新过程。
可选地,该方法还包括:在RC和RS上设置组播代理M_Agent,M_Agent综合IGMPsnooping、IGMP proxy以及组播路由的功能,在组播协议IGMP方面,转发到多个共享通道上;在组播报文方面,分发到下联端口上;一个组播流就是一个单独的session。
在本发明实施例中,在RC和RS上设置组播代理,M_Agent。他有别于通常的IGMPProxy和IGMP snooping。IGMP Proxy只关注监听下联线路的IGMP报文并向上联线路发送,至于组播报文的处理并不关心。组播报文往往由系统的组播路由完成,IGMP snooping用于交换机来监听哪个端口是下联端口,并定期探测下联端口是否继续在组播组内,这些信息用于交换机判断是否转发组播报文给下联端口。
在本发明实施例中,M_Agent要综合IGMP snooping IGMP proxy以及组播路由等功能,在组播协议IGMP方面要转发到多个分享通道上;在组播报文方面,需要分发到下联端口上。一个组播流就是一个单独的session。对于没有进行特殊长session共享的RC来说,一个组播只有一个上联接口,也就是只有一个共享通道使用。当RC具备长session复用能力时,按照下文的长session共享逻辑处理。
在本发明实施例中,如图14、图15、图16所示,分别是组播相关的M_Agent逻辑单元布设、处理IGMP协议时的M_Agent逻辑单元布设、处理组播报文时的逻辑单元布设。
在本发明实施例中,新增组播报文处理描述如下:
由于前面图10已经对路由转发逻辑进行了描述,为便于描述的清晰简洁,这里不再纠结于转发的报文修改逻辑和转发逻辑,仅单独对组播相关的信息进行描述。
在RC和RS上可增加组播代理的处理单元,记为M_Agent。
上行处理过程:家庭网络内的设备,记为HD,需要使用分享的组播业务。则HD跟通常的情况一样作为一个IGMP client角色向上行IGMP网关进行组播流申请。HD发起IGMPreport组播申请加入报文。RC处于家庭网络内,则会收到该消息,RC同时判断出该申请加入的组播组是RC上配置的共享业务。RC则通过RC/RS协商出组播通道,RS向它的上行组播路由发起IGMP report组播申请加入报文。在RS所在的家庭网络内,一般来说HD/SG作为该业务网络的上行IGMP路由器或snooping设备,因此,HD/SG执行相应的功能向更上一级IGMP路由设备发起IGMP加入申请,最终HD/SG获得该组播流。除了RC、RS以外这些都符合常规IGMP协议行为。在RS家庭侧,通过RS和HD/SG的协议操作,最后RS获得IP1想要的组播流向RC转发,这是下文描述的下行处理。
下行处理过程:通过RS的组播申请,组播源、中间的组播路由器、HD/SG执行组播转发功能,最后组播流到达RS。这个过程RS作为组播的client角色得到了组播流。RS根据RC的申请把该组播流打包进RC/RS的协商好的通道转发到RC。RC根据记录的该通道信息,把组播流转发给家庭内的组播申请者,注意,从RS到组播申请者这段路径组播流报文的TTL不减1。
组播的其他协议操作比如查询、离开等消息以此类推,分别由RC和RS承担相应的逻辑处理。
当使用RR作为多接入网间共享时,RR的一对RS和RC直接按照前述的RC和RS的转发规则处理;或者当RR采用联动申请释放资源模式时,可作为一个整体直接转接流量,由原始的RC和最终RS组成一对组播处理代理来执行前述功能。
当有SS参与的组播转发时,对照图18和相应的处理步骤如下:
第一步:IP1发起组播申请报文,当采用IP组播时:组播报文的源地址是单播地址IP1,目标地址是组播地址IP2。当采用UDP组播时:组播报文的源地址和端口是单播地址IP1、和端口P1,目标地址和端口是组播地址IP2、端口P2。RC收到IP1的组播申请时判断该组播申请的组播流是共享业务,则RC可以向一个或多个并行通道发送按照长session封装原理封装该组播申请消息。
第二到第六步:按照长session转发规则执行普通通道内报文转发。
第七步:SS收到报文恢复出原始报文后,判断为组播申请报文后,根据该组播源的要求发起组播申请,通常是IGMP、或者PIM/SM等组播路由协议。
第八步:组播源发送的组播报文可能需经过多级组播路由到达SS。
第九步到第十三步:SS收到组播流后根据共享带宽的不同路径的负荷、代价把组播流按照长session转发规则经由RS分发到RC。
第十四步:RC收到组播报文后根据长session的转发规则去除外层共享通道封装,还原并重组出组播顺序报文发给IP1。
在本发明实施例中,扩展长session类流量的带宽的方法,如图17、图18所示:
为高效利用多个多个转发点的带宽,需要解决多源IP和端口的通信问题以及多路径均衡QoS问题。由于利用多个路径进行和对方通信,接收方会收到多个源IP端口到达的报文,但实际上是属于同一个会话的报文,是源发端发给RC后由于RC分别发给不同的RS转发路径造成的,在不改变接收端的IP协议情况下,接收端将视其为不同的会话,因此,多路径转发在这种情况下是不可行的,解决办法可通过本专利指出的在外网增设SS设备来重振报文和接收端建立会话来达到,这种为多转发路径建立的RC/RS/SS之间的session叫长session。由于进行了多路径转发,各路径的转发的带宽、时延、抖动等等参数都不尽相同,因此,在RC和SS接收和转发报文是会根据收发情况动态调整转发路径的报文比例以及重发滞后的报文。通过带外session相关信令来达到均衡的报文分配。在RC/RS/SS之间,传送一个S_info信息来提供相应的参数统计基础。
S_info:session info,用户维护一个session的信息流。包含(session_ID,packet_SEQ,path_NUM,buff_NUM)。session_ID是该session的全局唯一标识,用于标识这个长session。Packet_SEQ为session中报文的顺序号,在RC发往SS时由RC对原始报文按顺序分配序号并添加在转发的报文上,通过不同路径到达SS时便于SS回复到原始顺序。当报文由SS发往RC时,由SS对原始报文按顺序分配序号并添加在转发的报文上,经过不同路径到达RC时,便于RC按顺序恢复出原始报文顺序。报文在HD和目标IP之间是按照正常的IP协议进行交互的,所有特殊处理均发生在RC/RS/SS之间。
长session多路径收发逻辑图示如图17,当家庭网络内部的设备记为HD要和业务网络设备记为IP2之间通信时,RC和SS之间的RS是多个的,每个RS代表一个转发路径。在不同的路径之上根据策略分发报文以达到接受端平滑顺序的接受到报文。由于每个报文附带有session_info,收发端可根据该信息进行统计和流量控制。
长session多路径收发报文处理说明,如图18:
该处理和图10的处理类似,现在就不同之处予以说明:
1)图中的处理步骤2、3、4、5以及其反向报文的处理上都需要在IP包的有效载荷里加上session_info信息。
2)RC发送时处理的不同之处在于,对于收到的HD侧发来的报文,按报文顺序进行packet_SEQ序号递增分配,根据缓冲区大小分配buff_NUM,按照RS的路径标识填写完session_info信息再封装原始报文,按照每个RS的路径QoS统计信息进行策略分发报文到不同的RS路径上。对于SS的重传申请的报文进行重发。
3)RC接收报文,按照packet_SEQ序号重组报文顺序,按照buff_NUM、协议类型进行流控。对于长时间未收到的报文向SS申请,对于距离最小已正确转发报文的序号范围在buff_NUM内的报文按顺序发给HD。最小已正确转发序号报文指比他更小的packet_SEQ序号的报文都已经在buff_NUM范围内转发完成。
4)第五步的修改:RS的目标地址和端口填写的是SS的地址和端口。同时打包了session_info信息。RS记录(IPa,Pa,y,IP8’,P8’,x:IP8,P8,y,IP5,P5:session_info:IP1,P1,IP2,P2,x)的mapping信息,其中(IPa,Pa)是SS的服务IP和端口。在其逆向报文处理时根据该mapping信息替换目标IP和端口以及协议为(IP5,P5,y)并先HGW转发。
5)新增HD/SG到SS的报文转发以及逆向过程,HD/SG根据NAT规则修改源IP和端口为IP9上的端口(IP9,P9)转发该报文给SS,并记录(IP8’,P8’,y:IP9,P9,y)的NAT mapping信息。在逆向报文处理时,根据NAT记录的修改目标IP和端口为(IP8’,P8’)。实际上是一个标准的Nat处理过程。
6)新增SS到IP2的处理过程,当SS收到不同的HD/SG发来的报文时,根据session_info按照原始的packet_SEQ序号重组报文顺序,去掉外层报文封装,源IP和端口修改为IPa,Pa,协议修改为x。按照前述RC的报文重组算法把buff_NUM大小的报文以容许的顺序的发给IP2。记录(IPa,Pa,y,IP9,P9,y:session_info:IP1,P1,IP2,P2,x)mapping信息。在逆向处理时,按照记录的mapping信息,修改接收到的报文的目标IP和端口以及协议为(IP1,P1,x)并按前述RC相同的算法,对原始报文进行序号分配,填写session_info信息,修改外层的目标地址为(IP9,P9),再根据不同的转发路径的统计信息和转发策略向不同的HD/SG(也就是目标是不同的RS转发路径)分发报文。SS针对超时的报文对RC进行重新申请,并针对RC的从申请报文进行应答等流控与RC处理相同。
在本发明实施例中,多接入网间共享宽带,如图19所示:
有些接入网内不具备特定的业务网络出口服务,可通过引入RR设备使用其他接入网内的RS提供的转发服务。RR设备本身不具备特定业务流量出口的资源,但是可以接通不同的接入网,如果其他接入网内有相应的业务RS,它就可以在本来没有该业务的RS接入网内提供这种转发资源。RR实体可以看成由RS和RC组合而成。RC功能在一个接入网中探测出可用的RS资源,再在另一个接入网中发布RS资源。RR可以作为一个显式的RR设备来对资源发现和使用进行统一管理,或者也可以作为隐私RR,分别执行RC和RS功能,实际RC多RR最终是要的RS进行使用时通过RR来进行同步操作。
本发明实施例的资源共享方案可以包括:用其他时段的流量来换取当下的流量,或用一种业务流量来换另一种业务流量等多种情况,具体地,以上全部方案的应用场景可以包括但不限于以下场景:
1、接入网运营商交换业务流量
接入网运营商往往需要提供用户侧的接入设备,此设备大体上分为两种,一种是二层设备,常见的如光猫、ADSL/DSL猫、Cable猫等等,另一种是三层设备,往往是集成了2层设备的家庭路由器或称家庭网关。对于提供三层接入设备的家庭,运营商可利用在用户家庭的接入网网关设备,布设RS功能模块,该RS是受控的,他的功能,接入控制等等可被运营商配置管理并监控。运营商可借助布设于接入网关设备根据前述的资源探测、资源发布等流程对家庭环境进行业务出口资源探测与发布。运营可在接入网内部进入BRAS前的接入网内部路由器上布设RC功能,在这些路由器上设置特定业务流向到RC。典型布设如图20所示,注意,为简洁明了此处以及下述布设省略较为复杂SS、RR等设备逻辑,但不影响问题的解决阐述。通过以上布设,运营商可利用分布的家庭网络的业务流量资源,通过RC/RS的转发特定业务流量。作为RS提供者的家庭将得到合适的补偿。具体的业务流处理是:需要这种业务的家庭网络设备和通常一样发起业务报文,经由接入网设备进入到接入网运营商网络,运营商判断这些报文属于该分享业务类,因此,路由到RC,RC根据本文描述建立到RS/SS的共享通道。并转发此类报文以及后续此类报文。反向报文处理根据前述处理过程进行不再赘述。
针对布设三层设备的优化,布设如图21所示,接入运营商可以进一步把业务流检出和分流策略下降到上层HGW上,就近分流业务流量。业务流不需要经过BRAS侧,直接在接入网内部转发。运营商可在HGW上布设RC功能,该RC是受控的,他的业务分流和业务接入控制可被运营商配置管理并监控,购买该业务的家庭可通过运营商的此类RC转接业务流量。
布设如图22所示,接入网运营商也可以提供跨网转接服务以提供更广泛的共享资源。通过在不同接入网之间布设RR设备进行跨网资源转接,RR设备可以由运营商直接布设。RC就能利用这些资源进行更多的跨接入带宽分享。
2、用户自主行为的对等网络P2P流量分享
在用户家庭网络内自主布设RS、RC功能实体设备,这些设备可以是单独的物理设备模式或者是用户家庭网络内PC上的软件模块。这是用户的自主行为与接入运营商无关。利用PC上的软件或者特定的物理设备,具体的需要根据用户布设RC/RS的方式,用户通过对RS、RC、RR的探测,可设置RS用于共享的资源类型以及比例。用户可以只布设RC、RR或RS功能,或者(RC、RS),(RC、RR)等多种种组合。单接入网通道的共享示意图如图23所示,多接入网通道的共享示意图如图24所示。其中的处理过程已经在前述处理过程中描述清楚,不再赘述。
本发明实施例包括:通过预先设置的分布式系统DS在一个或多个家庭网络中发现和选定远程客户端RC和远程服务器RS;其中,DS为提供共享资源信息交换的系统,用于RC和RS针对共享资源的发布和提取;RC是使用共享带宽的设备,RS是提供共享带宽的设备;RS在被选定后向DS发布用于共享的资源,并在每次资源变化时向DS更新资源状态;RC在被选定后通过DS获取特定数量的优化匹配的DS提供的一套资源集合,并且DS更新自身的资源状态信息库的资源状态和预设的资源集合分发表;RC从资源集合中选出一个或多个RS建立起共享通道;当需要共享他人资源的家庭网络设备发送的特定报文被本地RC收到后,本地RC通过共享通道对特定报文进行传递;目的RS对接收到的所述特定报文根据需要进行源地址转换SNAT处理后发给目标地址,到达目标地址后目标地址针对该报文发出返回报文;返回的特定报文经RS发向本地RC再发回给对应的家庭网络设备;当所述本地RC使用完共享的资源后,主动释放所述共享通道和所述目的RS资源。通过该实施例方案,使得相同或不同接入网的用户之间实现了业务流量分享,打破了传统路由和多NAT带来的限制,达到了扩展共享带宽的目标。
下面附上名词解释和对照:
IP:Internet protocol,互联网协议,行文中多指IP地址;
DIP:distination IP,IP报文里面的目标IP字段;
DP:distination port,IP报文头部的目标端口字段;
SIP:sourcce IP,IP报文里面的源IP字段;
SP:source port,IP报文头部的源端口字段;
QoS:Quality of Service:服务质量,指一个服务提供的质量度量,在IP业务范畴指IP报文的带宽、抖动、时延、丢包率这些度量指标;
ICMP:Internet Control Message Protocol:Internet控制报文协议;
NAT:Network Address Translation,网络地址转换;
NAPT:Network Address Port Translation:网络端口地址转换,可将多个内部地址映射为一个合法公网地址,但以不同的协议端口号与不同的内部地址相对应,也就是<内部地址+内部端口>与<外部地址+外部端口>之间的转换;
SNAT:source network address translation:源地址转换,其作用是将ip数据包的源地址转换成另外一个地址;
echo服务:RFC862定义的echo协议,其作用是把客户端发来的报文复制后再发回;
IGMP:Internet Group Management Protocol,是因特网协议家族中的一个组播协议。该协议运行在主机和组播路由器之间;
IGMP snooping:Internet Group Management Protocol Snooping(互联网组管理协议窥探)的简称,它是运行在二层设备上的组播约束的机制,用于管理和控制组播组;
IGMP proxy:Internet Group Management Protocol Proxy(互联网组管理协议代理)的简称,是靠拦截用户和路由器之间的IGMP报文建立组播表,Proxy设备的上联端口执行主机的角色,下联端口执行路由器的角色;
UDP:User Datagram Protocol,用户数据报协议,是OSI(Open SystemInterconnection,开放式系统互联)参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务;
PIM-DM/SM:protocal independent multicast直接利用单播路由表的路由信息进行组播报文RDF检查,创建组播路由表项,转发组播报文;PIM-DM采用“push”模式,转发组播报文。PIM-SM采用“pull”模式,转发组播报文;
ISP:Internet Service Provider,互联网服务提供商;
distination IP:目的地IP,属于IP报文里的特定字段,一般是目的地IP地址;
distination port:目的地端口,属于IP报文里的特定字段,一般是目的地的端口号;
MSS:Maximum Segment Size,最大报文长度,是TCP协议定义的一个选项,MSS选项用于在TCP连接建立时,收发双方协商通信时每一个报文段所能承载的最大数据长度;
Protocol:协议;Protocol包含UDP、ICMP、TCP、Multicast、ALL(特定表示以上协议的混合流量测试;UDP、ICMP、TCP、Multicast这几个名词不需要解释,为约定俗成的IP网络术语;
SS:Session server:会话服务器,提供长session连接服务的设备;
RR:resource relay:资源转接器,提供资源的转接服务设备;
RC:resource client:资源共享客户端;
RS:resource server:资源共享服务端;
HGW:home gatway:家庭网关;
HD:home device:家庭网络设备;
SG:share gateway:可分享特定业务流出口的设备;
DS:distributed system:信息分发系统,是共享信息发布和拉取的系统;
DSAC:distributed service accesses control,,分布式服务访问控制;
bandwith:带宽;delay:时延;jitter:抖动;lost:丢包率。
虽然本发明实施例所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明实施例。任何本发明实施例所属领域内的技术人员,在不脱离本发明实施例所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明实施例的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (14)

1.一种带宽共享方法,其特征在于,所述方法包括:
通过预先设置的分布式系统DS在一个或多个家庭网络中发现和选定远程客户端RC和远程服务器RS,所述DS为提供共享资源信息交换的系统,用于RC和RS针对共享资源的发布和提取;所述RC是使用共享带宽的设备,所述RS是提供共享带宽的设备;
所述RS在被选定后向所述DS发布用于共享的资源,并在每次资源变化时向所述DS更新资源状态;所述RC在被选定后通过DS获取特定数量的优化匹配的所述DS提供的一套资源集合,并且所述DS更新自身的资源状态信息库的资源状态和预设的资源集合分发表;
所述RC从所述资源集合中选出一个或多个RS建立起共享通道;
当需要共享他人资源的家庭网络设备发送的特定报文被本地RC收到后,所述本地RC通过所述共享通道对所述特定报文进行传递;目的RS对接收到的所述特定报文根据需要进行源地址转换SNAT处理后发给目标地址,到达目标地址后目标地址针对该报文发出返回报文;返回的特定报文经RS发向本地RC再发回给对应的家庭网络设备;当所述本地RC使用完共享的资源后,主动释放所述共享通道和所述目的RS资源。
2.根据权利要求1所述的带宽共享方法,其特征在于,所述通过预先设置的分布式系统DS在一个或多个家庭网络系统中发现和选定远程客户端RC和远程服务器RS包括:
以目的互联网协议地址DIP,目的端口DP,协议Protocol三元组为一个目标协议探测点,根据家庭网络的配置,选择一个家庭网络设备作为探测设备,以该设备的本地IP作为源IP,以目标服务的测试设备的IP和端口作为目的IP和端口,并以家庭网络配置中的网关地址作为下一跳路由地址发起协议报文,通过监测返回报文以判断所发起的协议是否可达,以实现探测地址可达性;当判定所发起的协议可达时,确定该家庭网络具备这种协议资源,能够继续布设RS软件于特定设备上或布设RS硬件设备,并判定所述布设的RS设备具备协议出口流量的资源;
以DIP,DP,Protocol,性能capability四元组作为协议特性能力探测点,在可达性测试之后,向具备所述协议出口流量的RS设备发起能力测试报文,用于统计出口设备的该协议的性能;
根据所述可达性测试和能力测试形成一个家庭网络的探测资源列表:设备_标识device_ID,Protocol,capability;并根据所述探测资源列表选定所述RC和RS;其中,所述探测资源列表中包括一个或多个资源表项的家庭网络选择为具有提供共享资源的RS角色,并且不论所述探测资源列表中是否包括资源表项,家庭网络都可以有RC角色。
3.根据权利要求2所述的带宽共享方法,其特征在于,所述方法还包括:通过控制报文协议ICMP实现探测地址可达性,并通过所述RS的echo服务探测RC到RS之间的通道能力,以探测不丢包情况下或最大容忍的丢包率情况下的最大稳定带宽值和对应QoS值,实现所述能力测试。
4.根据权利要求1所述的带宽共享方法,其特征在于,所述方法还包括:所述RS和所述RC分别异步地向所述DS发起资源发布和资源申请;
所述RS在被选定后向所述DS发布用于共享的资源,并在每次资源变化时向所述DS更新资源状态包括:
所述RS在上线、下线、资源分配和资源回收时触发资源状态变化操作过程;所述DS收到所述RS的资源状态变化消息时,如果确认所述RS为合法的,则进行自身的资源状态信息库的更新,其中,在所述RS和所述DS之间存在协商的周期确认消息,如果在任意一个周期内所述RS无周期确认消息发送到所述DS,则所述DS确认该RS上的资源暂时不可用,并更新自身的资源状态信息库;并且所述DS在收到所述RS发布的资源信息时按照所述RS的自身特性和所述RS提供的资源集合信息,对该RS进行资源集合分类排序;所述RS的自身特性包括:所述RS的IP源、接入网类型和接入网流量代价;
所述RC在被选定后获取所述DS提供的一套资源集合包括:
所述DS在收到所述RC的资源申请时,根据所述RC的资源申请和所述RC的自身特性,在所述资源状态信息库中根据预设的最优算法提供一套资源集合;其中,所述资源集合内的资源多于所述RC的资源申请中所申请的资源需求,以使所述RC根据所述资源集合内的资源信息和所述RC的预设策略优选出一组RS资源进行分享操作;
所述RC的自身特性包括:所述RC的IP源、接入网类型和接入网流量代价;
所述RC的预设策略包括:本地到对方的代价和服务质量QoS探测。
5.根据权利要求4所述的带宽共享方法,其特征在于,所述RC从所述资源集合中选出一个或多个RS建立起共享通道包括:所述RC按照并行处理能力大小从获得的所述资源集合中选出n个RS建立起共享通道;其中,n为所述RC的最大并行处理通道数;n为正整数;
所述RC按照并行处理能力大小从获得的所述资源集合中选出n个RS建立起共享通道包括:
所述RC在对所述资源集合中的资源根据给定策略进行排序后,向各个资源并行发送可达性代价探测;所述RC根据发送和收到报文的统计信息对多个RS进行可达性选择,从中选择出往返时间最少,接入网线路最小代价的共mn个RS,其中,m为大于1的放大倍数;
所述RC向选择出的mn个RS发起共享通道的连接请求,所述mn个RS根据预设的安全策略确定是否建立连接;
所述RC向建立连接的RS发起共享服务流量的QoS探测申请,并发起流量探测报文;建立连接的RS向流量出口转发所述流量探测报文;所述RC收到返回的报文后对此路径进行横向比较评估,并根据评估结果优选出n条共享通道。
6.根据权利要求1所述的带宽共享方法,其特征在于,所述方法还包括:所述RC对共享的资源进行实时监控和评估,并替换已经恶化的资源;
其中,所述RC对共享的资源进行实时监控和评估包括:
所述RC维护mn个备选资源池,其中,n为所述RC的最大并行处理通道数;n为正整数;m为大于1的放大倍数;当预设的评估周期内x个共享通道的效率低于预设阈值时替换当前资源,替换资源数量为:min(x,y);x、y为小于n的正整数;其中,当y小于x时,在下一个评估周期到达时,重新评估需要替换的资源数量。
7.根据权利要求1所述的带宽共享方法,其特征在于,所述方法还包括:
所述RS在接受不同RC的资源请求时,对所述不同RC的资源请求进行互斥和分时处理。
8.根据权利要求1所述的带宽共享方法,其特征在于,所述方法还包括:当所述RC将报文并行分发给多个RS时,RC检测家庭网络设备发来的业务报文,并检出不同的会话session,按照不同的session进行报文重组并分发给最终设备。
9.根据权利要求1-8任意一项所述的带宽共享方法,其特征在于,所述报文的分发模式包括:应用层分发模式和报文高速分发模式;
所述应用层分发模式是指:所述RC或所述RS为应用层分发共享报文,向所述RS发送应用层报文,不改变所述RC或所述RS的原有路由信息;
所述报文高速分发模式是指:利用操作系统提供的驱动接口,实现通道驱动,模拟出家庭网络系统的接口设备,一个RC和RS对成为一个系统层面的网络接口,利用内核的策略路由进行报文分发。
10.根据权利要求1-8任意一项所述的带宽共享方法,其特征在于,所述方法还包括:在所述RC和所述RS上设置组播代理M_Agent,所述M_Agent综合互联网组管理协议窥探IGMPsnooping、互联网组管理协议代理IGMP proxy以及组播路由的功能,在组播协议IGMP方面,转发到多个共享通道上;在组播报文方面,分发到下联端口上;一个组播流就是一个单独的session。
11.根据权利要求1-8任意一项所述的带宽共享方法,其特征在于,所述方法还包括:在所属的RC、RS、DS、会话服务器SS以及资源转接器RR结合业务接入分布式服务访问控制DSAC形成各自独立的不同的业务网络;
使用RS资源通过业务接入控制实现权限的限制,并通过业务计费实现权限计费。
12.根据权利要求1-8任意一项所述的带宽共享方法,其特征在于,所述方法还包括:通过增加会话服务器SS设备解决多共享路径网络地址转换NAT问题。
13.根据权利要求1-8任意一项所述的带宽共享方法,其特征在于,所述方法还包括:通过增加资源转接器RR设备解决跨接入网之间的业务流的分享带宽问题。
14.根据权利要求1-8任意一项所述的带宽共享方法,其特征在于,所述方法还包括:在共享通道上通过RC、RS、SS以及RR中的一种或多种,在以下一种或多种通道上实现支持组播业务流:单RS共享通道、多RS的多共享通道上以及RR组成的多接入网共享通道。
CN201910725427.0A 2019-01-11 2019-08-07 一种带宽共享方法 Active CN111435922B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2019100264905 2019-01-11
CN201910026490 2019-01-11

Publications (2)

Publication Number Publication Date
CN111435922A CN111435922A (zh) 2020-07-21
CN111435922B true CN111435922B (zh) 2023-03-07

Family

ID=71581054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910725427.0A Active CN111435922B (zh) 2019-01-11 2019-08-07 一种带宽共享方法

Country Status (1)

Country Link
CN (1) CN111435922B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112152863B (zh) * 2020-10-21 2022-05-24 新华三信息安全技术有限公司 分布式带宽分配方法及装置
CN115225571A (zh) * 2021-04-15 2022-10-21 华为技术有限公司 一种报文处理的方法及相关装置
CN114500678A (zh) * 2022-01-26 2022-05-13 阿里巴巴(中国)有限公司 一种网关与通信节点的建连方法及设备
CN115996195B (zh) * 2023-03-23 2023-05-30 腾讯科技(深圳)有限公司 一种数据传输方法、装置、设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5586121A (en) * 1995-04-21 1996-12-17 Hybrid Networks, Inc. Asymmetric hybrid access system and method
EP1531584A1 (en) * 2003-11-11 2005-05-18 Nokia Corporation Link layer based network sharing
CN1941740B (zh) * 2005-09-26 2010-09-15 华为技术有限公司 接入网资源控制系统及方法
CN100518371C (zh) * 2006-01-06 2009-07-22 中兴通讯股份有限公司 一种数字集群终端跨调度客户端的切换方法

Also Published As

Publication number Publication date
CN111435922A (zh) 2020-07-21

Similar Documents

Publication Publication Date Title
CN111435922B (zh) 一种带宽共享方法
CN102084638B (zh) 计算机网络中接入服务器的确定性会话负载平衡和冗余
CN100521663C (zh) 点对点通信中穿越网络地址转换的方法
US7257646B2 (en) Method and arrangement for handling information packets via user selectable relay nodes
CN101248647B (zh) 用于本地对等通信量的方法和系统
CN101557388B (zh) 一种基于UPnP和STUN技术相结合的NAT穿越方法
CN101699801B (zh) 一种数据传输方法及传输数据的虚拟对等网络系统
CN100477636C (zh) 客户端主应用部件与目标服务器间进行通信的装置和方法
US20040153858A1 (en) Direct peer-to-peer transmission protocol between two virtual networks
US7558249B2 (en) Communication terminal, and communication method
CN117729184A (zh) 用于建立媒体会话的方法和装置
US20060168084A1 (en) Method and apparatus for rendering load balancing and failover
US20090225660A1 (en) Communication device and operation management method
WO2006058891A2 (en) A method for identifying real-time traffic hop by hop in an internet network
US20080107124A1 (en) System and method for supporting mobility and multipath packet delivery in ip communications and computer networks across nat and firewall boxes
WO2006046576A1 (ja) パケット通信ネットワーク及びパケット通信方法
WO2013040970A1 (zh) 中继节点选择方法及装置
WO2021008591A1 (zh) 数据传输方法、装置及系统
US11647069B2 (en) Secure remote computer network
US10771511B2 (en) Communication method to maintain an application session between a terminal and an application server
CN116708381B (zh) 跨网络的数据传输方法、装置和存储介质及电子设备
CN115296988B (zh) 一种实现IPSec网关动态组网的方法
KR101308089B1 (ko) 고가용성을 지원하기 위한 IPSec VPN 시스템 및 방법
Zhang et al. A NAT traversal mechanism for peer-to-peer networks
Tommasi et al. Charms: Cooperative hybrid architecture for relaying multicast satellite streams to sites without a satellite receiver

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