CN117135216A - 一种数据传输方法、olt和相关设备 - Google Patents

一种数据传输方法、olt和相关设备 Download PDF

Info

Publication number
CN117135216A
CN117135216A CN202210550448.5A CN202210550448A CN117135216A CN 117135216 A CN117135216 A CN 117135216A CN 202210550448 A CN202210550448 A CN 202210550448A CN 117135216 A CN117135216 A CN 117135216A
Authority
CN
China
Prior art keywords
target
olt
pppoe
ont
request message
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.)
Pending
Application number
CN202210550448.5A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210550448.5A priority Critical patent/CN117135216A/zh
Publication of CN117135216A publication Critical patent/CN117135216A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

本申请实施例公开了一种数据传输方法、OLT和相关设备,用于简化PPPoE报文在ONT与OLT之间传输的流程。本申请实施例方法包括:OLT接收来自第一ONT的第一请求报文;识别到第一请求报文的目的地址为目标地址,OLT剥离第一请求报文的PPPoE头部,得到第一目标请求报文;OLT根据第一目标请求报文获取第一目标响应报文;第一目标响应报文包括第一目标数据,第一目标响应报文的源地址和目的地址分别为目标地址和第一ONT的地址;OLT将第一PPPoE标识作为PPPoE头部,对第一目标响应报文进行封装得到第一响应报文;其中,第一PPPoE标识是在第一对应关系中,与第一ONT的标识对应的PPPoE标识;第一对应关系为预先保存的PPPoE标识与ONT的标识之间的对应关系;OLT向第一ONT发送第一响应报文。

Description

一种数据传输方法、OLT和相关设备
技术领域
本申请实施例涉及通信领域,尤其涉及一种数据传输方法、OLT和相关设备。
背景技术
在宽带接入场景中,用户设备(user equipment,UE)通过ONT接入网络,UE上运行的应用程序(application,APP),可以通过光网络设备(optical network terminal,ONT)、光纤线路终端(optical line terminal,OLT)和宽带远程接入服务器(broadband remoteaccess server,BRAS),实现与骨干网的连接。APP与骨干网之间交互的报文,在ONT、OLT与BRAS之间以PPPoE报文的形式传输。当前,只有ONT和BRAS进行PPPoE报文的解析与生成。
随着边缘计算技术的发展,出现了将应用服务下放到边缘设备的需求,以通过OLT等边缘设备为APP提供应用服务。
OLT与APP之间的报文通过ONT来转发,ONT通过PPPoE的封装格式转发报文。但是,OLT并不会解析或生成PPPoE格式的响应报文,因此在ONT与OLT之间无法直接通过PPPoE报文的格式传输数据。为了实现应用服务到OLT等边缘设备的下放,需要改变OLT与ONT之间的会话格式或使会话从BRAS绕道,导致应用服务下放到OLT等边缘设备的代价较高。
发明内容
本申请实施例提供了一种数据传输方法、OLT和相关设备,用于简化OLT与ONT之间的会话流程,实现应用服务到OLT等边缘设备的下放。
第一方面,本申请实施例提供了一种数据传输方法,该方法包括:OLT接收来自第一ONT的第一请求报文。第一请求报文包括第一目标数据的标识,第一请求报文用于请求第一目标数据。并且,第一请求报文的目的地址为目标设备的地址。也就是说,第一请求报文是第一ONT向目标设备请求第一目标数据的报文。OLT识别到第一请求报文的目的地址为目标设备的地址,OLT就可以剥离第一请求报文的PPPoE头部,得到第一目标请求报文,并根据第一目标请求报文获取第一目标数据。获取了第一目标数据,OLT就可以将第一目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文。其中,第一PPPoE标识是在第一对应关系中,与第一ONT的标识对应的PPPoE标识,第一对应关系为OLT预先保存的PPPoE标识与ONT的标识之间的对应关系。获取了第一响应报文,OLT就可以向第一ONT发送第一响应报文。
在本申请实施例中,OLT一方面可以剥离来自第一ONT的第一请求报文的PPPoE头部,实现PPPoE报文的解析;另一方面可以根据预先保存的第一对应关系,确定与第一ONT的标识对应的第一PPPoE标识,并在向第一ONT发送的第一响应报文中打上第一PPPoE标识,实现PPPoE报文的生成。也就是说,本申请实施例的OLT可以代替BRAS进行PPPoE报文的解析与生成,从而实现了在OLT与ONT之间通过PPPoE格式的报文进行交互。报文传输过程中既不需要会话从BRAS绕道,也不需要改变会话格式,降低了应用服务下放到OLT等边缘设备的代价。
在本申请实施例中,边缘设备即为目标设备,目标设备可以包括OLT,也可以包括OLT之外的其他设备,例如存储设备、计算设备等,只要该设备通过OLT实现与第一ONT之间交互即可,本申请对此不做限定。
在一种可选的实现方式中,OLT可以根据ONT上线时的配置消息保存第一对应关系。具体的,在得到第一响应报文之前,OLT可以接收配置消息,配置消息包括第一ONT的标识和第一PPPoE标识,配置消息用于指示第一PPPoE标识与第一ONT的标识之间的对应关系。接收了配置消息,OLT就可以根据配置消息,保存第一对应关系。
可选的,第一ONT的标识可以是第一OND的身份标识号(identity document,ID)、第一ONT的互联网协议地址(internet protocol address,IP地址)、第一ONT的产品序列号(serial number,SN)码等,本申请对此不做限定。
在本申请实施例中,配置消息可以是OLT在第一ONT上线时接收的。通过配置消息传递第一PPPoE标识与第一ONT之间的对应关系,使得第一ONT一完成上线,就可以与OLT以PPPoE的报文格式进行数据交互。
在一种可选的实现方式中,OLT可以根据ONT与BRAS之间的通信,确定并保存第一对应关系。具体的,在得到第一响应报文之前,OLT可以接收PPPoE会话报文,PPPoE会话报文的源地址或目的地址为第一ONT的地址(相对的,目的地址或源地址为BRAS的地址),PPPoE会话报文的PPPoE头部包括第一PPPoE标识。OLT可以读取PPPoE会话报文,根据PPPoE会话报文确定第一ONT的标识与第一PPPoE标识之间的对应关系,从而保存第一对应关系。
在本申请实施例中,由于ONT与BRAS之间的会话经过OLT的转发实现,因此OLT可以根据ONT与BRAS之间传输的PPPoE会话报文确定并保存第一对应关系,不需要定义新的报文来向OLT指示第一对应关系,可以节省通信资源。
在一种可选的实现方式中,OLT可以根据第一请求报文中所包括的第一PPPoE标识,确定第一PPPoE与第一ONT的标识之间的对应关系。具体的,在得到第一响应报文之前,若OLT识别到第一请求报文的目的地址为目标设备的地址,则OLT可以解析第一请求报文的包头,确定第一请求报文的源地址和PPPoE头部分别为第一ONT的地址和第一PPPoE标识。然后,OLT可以保存第一PPPoE标识与第一ONT的标识之间的对应关系,从而得到第一对应关系。
在本申请实施例中,OLT根据第一请求报文中所包括的第一PPPoE标识,就能确定第一PPPoE标识与第一ONT的标识之间的对应关系,从而保存第一对应关系。OLT不需要通过额外的消息或报文来获取第一PPPoE标识与第一ONT的标识之间的对应关系,防止网络资源浪费于生成和传输该额外消息或报文。
在一种可选的实现方式中,第一目标数据由具有前后时序的多个数据块组成。OLT可以将第一目标数据的第一数据块作为载荷,将第一ONT的地址作为包头中的目的地址和将第一请求报文中的第一PPPoE标识作为报文标识进行封装得到第二响应报文,并向第一ONT发送第二响应报文。然后,OLT将第一目标数据的第二数据块作为载荷,将第一ONT的地址作为包头中的目的地址和将根据第一对应关系确定出的第一PPPoE标识作为报文标识进行封装得到第一响应报文。其中,在第一目标数据中,第二数据块为第一数据块后序的数据块。
在本申请实施例中,在第一目标数据中较为前序的数据块的封装过程中,OLT直接根据第一请求报文确定第一PPPoE标识更为快速,可以减小获取对应响应报文的时延。在OLT封装第一目标数据中较为后序的第二数据块时,由于第一请求报文的信息可能已被消除,因此根据第一对应关系确定第一PPPoE标识并在包括第二数据块的第一响应报文中打上该第一PPPoE标识。
在一种可选的实现方式中,OLT可以根据已接收的第一ONT的请求报文来确定和保存第一对应关系。具体的,在得到第一响应报文之前,OLT接收来自第一ONT的第二请求报文,第二请求报文的PPPoE头部包括第一PPPoE标识,且第二请求报文的目的地址和源地址分别为目标设备的地址和第一ONT的地址。OLT识别到第二请求报文的目的地址为目标设备的地址,OLT则可以解析第二请求报文的包头,确定第二请求报文的源地址和PPPoE头部分别为第一ONT的地址和第一PPPoE标识。然后,OLT保存第一PPPoE标识与第一ONT的标识之间的对应关系,得到第一对应关系。
在本申请实施例中,第一请求报文和第二请求报文都是第一ONT向OLT发送的请求报文。OLT通过第二请求报文获取第一PPPoE标识与第一ONT的标识之间的对应关系,不需要额外发送报文,通过已有的第二请求报文,即可使OLT获取上述对应关系,对网络和会话的变动小。
在一种可选的实现方式中,第二请求报文的载荷中包括第二目标数据的标识,第二请求报文用于请求第二目标数据。OLT还可以剥离第二请求报文的PPPoE头部,得到第二目标请求报文,并根据第二目标请求报文获取第二目标数据。接下来,OLT将第二目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和将第二请求报文中的第一PPPoE标识作为报文标识进行封装得到第三响应报文。并向第一ONT发送第三响应报文。
在一种可选的实现方式中,目标设备可以通过OLT实现与ONT之间的通信。在该方案中,OLT可以剥离第一请求报文的PPPoE头部,并将第一目标请求报文的源地址替换为OLT的地址,得到第一目标请求报文,并向目标设备发送第一目标请求报文。然后,OLT可以接收来自目标设备的第一目标响应报文,第一目标响应报文包括第一目标数据,且第一目标响应报文的目的地址为OLT的地址。然后,OLT根据第二对应关系将第一目标响应报文的目的地址替换为第一ONT的地址,根据第一对应关系将第一PPPoE标识作为PPPoE头部,对第一目标响应报文进行封装得到第一响应报文。其中,第一ONT的地址为第二对应关系中,与目标第二五元组对应的目标第一五元组中的ONT地址,第二对应关系为预先保存的第一五元组与第二五元组之间的对应关系,第一五元组为ONT与通信设备之间会话的五元组,第二五元组为OLT与通信设备之间的对应关系,目标第一五元组和目标第二五元组中的通信设备的地址均为目标设备的地址。
在本申请实施例中,若目标设备为通过OLT与ONT进行通信的设备。通过本申请实施例提供的方法,可以避免报文在OLT与ONT之间传输的过程中,从BRAS绕行,简化了目标设备为ONT提供应用服务的报文传输流程,降低了应用服务下放至OLT外的目标设备的代价。
在一种可选的实现方式中,OLT可以将第一目标数据分块通过多个响应报文发送给第一ONT。对于每个数据块的响应报文,OLT都可以根据第一对应关系中第一ONT的标识对应于第一PPPoE标识,将第一PPPoE标识作为响应报文中的PPPoE头部,并向第一ONT发送响应报文。保证了多个响应报文都统一的以PPPoE的格式发送给第一ONT,多个响应报文都不需要绕行BRAS,可以简化多个响应报文的传输流程。并且,多个响应报文都统一的向第一ONT发送(不会部分发送给第一ONT,部分发送给BRAS绕行),可以提高多个响应报文依序到达第一ONT的可能性,减小APP按序获取第一目标数据不同分块的时延。
在一种可选的实现方式中,OLT可以通过外部的数据存储设备获取第一目标数据,即通过引流的方式获取第一目标数据。具体的,OLT可以向数据存储设备发送第三请求报文,第三请求报文包括(第一目标请求报文中的)第一目标数据的标识,第三请求报文的目的地址为数据存储设备的地址,第三请求报文用于向数据存储设备请求第一目标数据。然后,OLT可以接收来自数据存储设备的第四响应报文,第四响应报文包括第一目标数据
在一种可选的实现方式中,OLT可以根据其他ONT的请求获取第一目标数据,并根据第一请求报文中的第一目标数据的标识,将该第一目标数据发送给第一ONT。具体的,在OLT根据第一请求报文获取第一目标数据之前,OLT可以接收来自第二ONT的第四请求报文,第四请求报文包括第一目标数据的标识,第四请求报文用于向OLT请求第一目标数据。然后,OLT根据第四请求报文,向数据存储设备发送第五请求报文,第五请求报文包括第一目标数据的标识,用于向数据存储设备请求第一目标数据。然后,OLT可以接收来自数据存储设备的第五响应报文,第五响应报文包括第一目标数据。然后,OLT就可以根据第一目标请求报文中的第一目标数据的标识,从第五响应报文中获取第一目标数据。
在本申请实施例中,若其他的ONT(例如第二ONT)已经向数据存储设备请求过第一目标数据了,OLT可以直接使用根据别的ONT的请求所获取的第一目标数据,不需要再次向数据存储设备请求第一目标数据(引流),减小了OLT获取第一响应报文的时延。
在一种可选的实现方式中,OLT与第一ONT之间通过光纤连接。
第二方面,本申请实施例提供了一种光纤线路终端OLT,该OLT包括路由模块和计算模块。路由模块用于:接收来自第一ONT的第一请求报文,第一请求报文包括第一目标数据的标识,第一请求报文用于请求第一目标数据,第一请求报文的目的地址为目标设备的地址;在识别到第一请求报文的目的地址为目标设备的地址的情况下,剥离第一请求报文的PPPoE头部,得到第一目标请求报文。计算模块,用于根据第一目标请求报文获取第一目标数据。路由模块还用于:将第一目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文;其中,第一PPPoE标识是在第一对应关系中,与第一ONT的标识对应的PPPoE标识;第一对应关系为预先保存的PPPoE标识与ONT的标识之间的对应关系;向第一ONT发送第一响应报文。
第二方面和第二方面的实现方式的有益效果,参见第一方面,此处不再赘述。
在一种可选的实现方式中,路由模块还用于:接收配置消息,配置消息包括第一ONT的标识和第一PPPoE标识,配置消息用于指示第一PPPoE标识与第一ONT的标识之间的对应关系;根据配置消息,保存第一对应关系。
在一种可选的实现方式中,路由模块还用于:接收PPPoE会话报文,PPPoE会话报文的源地址或目的地址为第一ONT的地址,PPPoE会话报文的PPPoE头部包括第一PPPoE标识;读取PPPoE会话报文,确定第一ONT的标识与第一PPPoE标识之间的对应关系,保存第一对应关系。
在一种可选的实现方式中,路由模块还用于:在识别到第一请求报文的目的地址为目标设备的地址的情况下,解析第一请求报文的包头,确定第一请求报文的源地址和PPPoE头部分别为第一ONT的地址和第一PPPoE标识;保存第一PPPoE标识与第一ONT的标识之间的对应关系,得到第一对应关系。
在一种可选的实现方式中,路由模块还用于:将第一目标数据的第一数据块作为载荷,将第一ONT的地址作为包头中的目的地址和将第一请求报文中的第一PPPoE标识作为PPPoE头部进行封装,得到第二响应报文,并向第一ONT发送第二响应报文;将第一目标数据的第二数据块作为载荷,将第一ONT的地址作为包头中的目的地址和将第一对应关系中的第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文;其中,在第一目标数据中,第二数据块为第一数据块后序的数据块。
在一种可选的实现方式中,路由模块还用于:接收来自第一ONT的第二请求报文,第二请求报文的PPPoE头部包括第一PPPoE标识,第二请求报文的目的地址和源地址分别为目标设备的地址和第一ONT的地址;在识别到第二请求报文的目的地址为目标设备的地址的情况下,解析第二请求报文的包头,确定第二请求报文的源地址和PPPoE头部分别为第一ONT的地址和第一PPPoE标识;保存第一PPPoE标识与第一ONT的标识之间的对应关系,得到第一对应关系。
在一种可选的实现方式中,第二请求报文包括第二目标数据的标识,第二请求报文用于请求第二目标数据。路由模块还用于:剥离第二请求报文的PPPoE头部,得到第二目标请求报文;根据第二目标请求报文获取第二目标数据;将第二目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和将第二请求报文中的第一PPPoE标识作为PPPoE头部进行封装,得到第三响应报文,并向第一ONT发送第三响应报文。
在一种可选的实现方式中,路由模块具体用于:剥离第一请求报文的PPPoE头部,并将第一目标请求报文的源地址替换为OLT的地址,得到第一目标请求报文;向目标设备发送第一目标请求报文;接收来自目标设备的第一目标响应报文,第一目标响应报文包括第一目标数据,第一目标响应报文的目的地址为OLT的地址;根据第二对应关系将第一目标响应报文的目的地址替换为第一ONT的地址,根据第一对应关系将第一PPPoE标识作为PPPoE头部,对第一目标响应报文进行封装得到第一响应报文。其中,第一ONT的地址为第二对应关系中与目标第二五元组对应的目标第一五元组中的ONT地址,第二对应关系为预先保存的第一五元组与第二五元组之间的对应关系,第一五元组为ONT与通信设备之间会话的五元组,第二五元组为OLT与通信设备之间的对应关系,目标第一五元组和目标第二五元组中的通信设备的地址均为目标设备的地址。
在一种可选的实现方式中,计算模块具体用于:向数据存储设备发送第三请求报文,第三请求报文包括第一目标数据的标识,第三请求报文的目的地址为数据存储设备的地址,第三请求报文用于向数据存储设备请求第一目标数据;接收来自数据存储设备的第四响应报文,第四响应报文包括第一目标数据。
在一种可选的实现方式中,路由模块还用于:接收来自第二ONT的第四请求报文,第四请求报文包括第一目标数据的标识,第四请求报文用于向OLT请求第一目标数据;根据第四请求报文,向数据存储设备发送第五请求报文,第五请求报文包括第一目标数据的标识,第五请求报文用于向数据存储设备请求第一目标数据;接收来自数据存储设备的第五响应报文,第五响应报文包括第一目标数据。计算模块具体用于:根据第一目标请求报文中的第一目标数据的标识,从第五响应报文中获取第一目标数据。在一种可选的实现方式中,目标设备包括OLT,目标设备的地址包括计算模块的地址。路由模块具体用于:向计算模块发送第一目标请求报文。计算模块具体用于:根据第一目标请求报文获取第一目标数据;将第一目标数据作为载荷,将第一ONT的地址作为包头中的目的地址进行封装,得到第一目标响应报文,并向路由模块发送所述第一目标响应报文。路由模块具体用于:根据第一对应关系将第一PPPoE标识作为PPPoE头部,对第一目标响应报文进行封装,得到第一响应报文。
在本申请实施例中,将应用服务下放至OLT上的计算模块,OLT提供应用服务的过程中,报文均在私网内(ONT与OLT之间)传输,不需要进行报文在公网与私网之间的转换,流程简单。
在一种可选的实现方式中,计算模块具体用于:将第一目标请求报文的目的地址替换为数据存储设备的地址,得到第三请求报文,并向数据存储设备发送第三请求报文,第三请求报文用于向数据存储设备请求第一目标数据;接收来自数据存储设备的第四响应报文,第四响应报文包括第一目标数据。
第三方面,本申请实施例提供了一种OLT,包括处理器和存储器;处理器与存储器耦合;
存储器,用于存储程序;
处理器,用于执行存储器中的程序,使得处理器执行第一方面所述的数据传输方法。
第四方面,本申请实施例提供了一种芯片,包括至少一个处理器和接口;
接口用于为至少一个处理器提供程序指令或者数据;
至少一个处理器用于执行程序指令,以实现第一方面所述的方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,当该计算机程序在计算机上运行时,使得计算机执行第一方面所述的方法。
第六方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括:计算机程序代码;
当该计算机程序代码被运行时,实现第一方面所述的方法。
附图说明
图1为本申请的网络架构示意图;
图2为本申请实施例提供的数据传输方法的一个流程图;
图3a为本申请实施例提供的数据传输方法的一个报文结构图;
图3b为本申请实施例提供的数据传输方法的另一报文结构图;
图4为本申请实施例提供的数据传输方法的另一流程图;
图5为本申请实施例提供的数据传输方法的另一流程图;
图6为本申请实施例提供的数据传输方法的另一流程图;
图7为本申请实施例提供的数据传输方法的另一流程图;
图8为本申请实施例提供的数据传输方法的另一流程图;
图9为本申请实施例提供的数据传输方法的另一流程图;
图10为本申请实施例提供的OLT的一个结构示意图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,其目的在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。另外,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
图1为本申请的网络架构示意图,如图1所示,用户设备(user equipment,UE)(例如图1中所示的电脑、投影仪、穿戴设备、机顶盒等)通过有线或无线连接的方式与光网络设备(optical network terminal,ONT)连接。ONT通过光纤与光线路终端(optical lineterminal,OLT)连接,实现ONT与OLT之间的光信号传输。宽带远程接入服务器(broadbandremote access server,BRAS)为骨干网的边缘设备,OLT与BRAS通过光纤连接。通过BRAS,可以实现UE与骨干网的通信。
UE上可以运行应用程序(application,APP),骨干网通过BRAS、OLT和ONT与APP交互报文,从而为APP提供应用服务。例如,UE为机顶盒,APP为机顶盒上的电影放映程序。则APP可以通过ONT、OLT和BRAS向骨干网请求电影资源。骨干网可以通过BRAS、OLT和ONT,将对应的电影资源下发给APP,从而为电影放映程序提供应用服务。
在ONT、OLT与BRAS之间,报文是通过PPPoE的格式传输的,即在ONT、OLT与BRAS之间传输的报文,包括PPPoE头部。通常,只有ONT与BRAS进行PPPoE报文(即包括PPPoE头部的报文)的解析与生成,OLT仅进行PPPoE报文的转发。随着边缘计算技术的发展,应用服务逐渐向边缘设备下放。因此,出现了将应用服务下放到OLT等边缘设备的需求。即,通过OLT等边缘设备为UE上的APP提供应用服务。其中,边缘设备可以包括OLT,也可以包括OLT之外的其他设备,例如存储设备、计算设备等,只要该设备通过OLT实现与ONT之间交互即可,本申请对此不做限定。
OLT与APP之间的报文通过ONT转发,在ONT与OLT等上层设备(比ONT更接近骨干网的设备)之间,报文以PPPoE的格式传输。由于当前的OLT并不会解析或生成PPPoE报文,因此ONT与OLT之间的报文只能通过BRAS转发,由BRAS将来自OLT的报文封装成PPPoE格式的报文,以及由BRAS将来自ONT的PPPoE格式的报文解析成OLT可读的格式(例如以太网上的IP协议(internet protocol over ethernet,IPoE)格式等)的报文。也就是说,若应用服务下放到边缘设备,且报文经过ONT和OLT传输,在OLT与ONT之间传输的报文则从BRAS绕行。这导致报文传输的时延高,且会占用BRAS与OLT之间的通信资源。若直接在OLT与ONT之间传输OLT可读的格式的报文,则需要在OLT与ONT之间开设这种类型报文的端口。以上方案都会导致应用服务向OLT等边缘设备的下放付出较高的代价。
为了减小应用服务向OLT等边缘设备下放的代价,本申请实施例提供了一种数据传输方法、OLT和相关设备,通过简化PPPoE报文在ONT与OLT之间传输的流程,实现在ONT与OLT之间直接交互PPPoE报文,减小了应用服务下放到OLT等边缘设备的代价。
如图2所示,基于图1所示的网络架构,本申请实施例提供的数据传输方法包括:
201、OLT接收来自第一ONT的第一请求报文。
APP执行任务时,通过第一ONT向OLT发送第一请求报文,以向目标设备(即前面所述的应用服务下放至的边缘设备)请求第一目标数据。于是,OLT可以接收来自第一ONT的第一请求报文。第一请求报文的载荷中包括第一目标数据的标识,第一请求报文的目的地址和源地址分别为目标设备的地址和第一ONT的地址。第一请求报文用于第一ONT向目标设备请求第一目标数据。
可选的,目标设备可以是OLT,也可以是存储设备、计算设备等其它设备,通过OLT与第一ONT通信。在设备形态上,目标设备可以是服务器、计算板(例如与OLT连接的计算板)等,本申请对此不做限定。若目标设备不是OLT,目标设备与OLT之间可以通过IPoE等端口连接,以实现OLT与目标设备之间的数据传输。
以UE为机顶盒,APP为电影放映程序为例。当APP进行A电影的放映任务时,APP通过第一ONT向OLT发送第一请求报文。第一请求报文的载荷中包括A电影的标识,A电影的标识(第一目标数据的标识)用于标识A电影的视频数据(第一目标数据),第一请求报文用于向目标设备(例如OLT、与OLT连接的视频服务器等)请求A电影的视频数据。
可选的,除了请求视频数据,第一请求报文还可以用于请求音频数据、数据的运算结果等其他数据,本申请对此不做限定。例如,第一目标数据的标识可以是待运算的数据,第一目标数据可以是该待运算数据的运算结果,第一请求报文用于请求待运算数据的运算结果。
202、OLT识别到第一请求报文的目的地址为目标设备的地址,OLT剥离第一请求报文中的第一PPPoE头部,得到第一目标请求报文。
在OLT识别到第一请求报文的目的地址为目标地址的情况下,OLT可以剥离第一请求报文(包头)的PPPoE头部,得到第一目标请求报文。
由于PPPoE格式的报文主要用于ONT与BRAS之间的报文传输,本申请实施例将第一请求报文的PPPoE头部剥离,从而将PPPoE格式的第一请求报文转化为更多设备或模块所能处理的第一目标请求报文。由于第一目标请求报文是更多设备或模块所能解读的格式的报文(例如IPoE格式的报文),根据第一目标请求报文,OLT就能更方便地获取第一目标数据。
203、OLT根据第一目标请求报文获取第一目标数据。
可选的,若第一请求报文中的目标设备的地址为与OLT连接的目标设备的地址,则在步骤202,OLT将第一请求报文(PPPoE格式)转化为目标设备可解析格式(例如IpoE格式)的第一目标请求报文后,OLT可以向目标设备发送第一目标请求报文。由于第一目标请求报文是第一请求报文剥离PPPoE头部所得的,所以第一目标请求报文中包括第一目标数据的标识。目标设备可以解析第一目标请求报文,根据解析所得的第一目标数据的标识获取第一目标数据,并将第一目标数据承载在第一目标响应报文发送给OLT。
可选的,若第一请求报文中的目标设备的地址为OLT的地址,OLT可以解析第一目标请求报文,得到第一目标数据的标识。并根据第一目标数据的标识,获取第一目标数据。
可选的,OLT可以根据第一目标数据的标识,从自身获取第一目标数据,也可以向其他的设备请求第一目标数据,本申请对此不做限定。
例如,若第一目标数据的标识为待运算的数据,OLT可以利用自身的算力计算得到该待运算数据的运算结果(第一目标数据)。或者,若第一目标数据的标识为目标视频数据的标识,而OLT本地并没有存储该目标视频数据,则OLT可以向存储了目标视频数据的数据存储设备请求该目标视频数据,从而获取目标视频数据(第一目标数据);若OLT本地存储了该目标视频数据,则OLT可以直接从本地调用目标视频数据。
204、OLT将第一目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装得到第一响应报文;其中,第一PPPoE标识是在第一对应关系中,与第一ONT的标识对应的PPPoE标识;第一对应关系为预先保存的PPPoE标识与ONT的标识之间的对应关系。
OLT预先保存了第一对应关系。第一对应关系为PPPoE标识与ONT的标识之间的对应关系。其中,PPPoE标识为ONT与BRAS之间的PPPoE会话的标识。由于OLT可以连接多个ONT,因此OLT上预先保存的第一对应关系可以包括多个ONT与他们各自对应的PPPoE会话的标识之间的对应关系,也可以仅包括一个ONT与其对应的PPPoE会话的对应关系,本申请对此不做限定。
在步骤203中,OLT根据第一请求报文获取了第一目标数据。为了响应第一请求报文,OLT可以将第一目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文。其中,第一响应报文中的第一PPPoE标识为OLT从第一对应关系中确定的,与第一ONT的标识对应的PPPoE标识,即第一ONT与BRAS之间的PPPoE会话的标识。
例如,若第一目标数据为A电影的视频数据,则OLT可以将A电影的视频数据作为载荷,将第一ONT的地址作为包头中的目的地址,根据第一对应关系中第一ONT的地址对应于第一PPPoE标识将第一PPPoE的标识作为PPPoE头部,封装得到第一响应报文。
205、OLT向第一ONT发送第一响应报文。
获取了第一响应报文,OLT就可以向第一ONT发送第一响应报文。例如,若第一请求报文是APP通过第一ONT向OLT发送的用于请求A电影的视频数据的报文,则OLT获取并向第一ONT发送了第一响应报文后,第一ONT就可以解析第一响应报文获取A电影的视频数据,并向APP发送该视频数据,从而实现了OLT为APP提供应用服务(提供A电影的视频数据),实现了应用服务向OLT等边缘设备的下放。
由于第一响应报文的目的地址为第一ONT的地址,且第一响应报文中携带了第一ONT与BRAS之间的PPPoE会话的标识(第一PPPoE标识),因此对于第一ONT来说,所接收的响应报文的类型没有变化,还是与BRAS之间的PPPoE会话的报文。也就是说,本申请实施例提供的方法并没有改变ONT所收发的报文的格式,不用改变ONT的接口以收发新类型的报文(例如IpoE报文等)。
并且,在步骤202和203中,OLT接收到第一请求报文后没有转发给BRAS处理,而是由OLT对第一请求报文进行格式转换(从PPPoE格式转换为IpoE等其他格式),并由目标设备获取第一报文所请求的第一目标数据。OLT生成的第一响应报文中的第一PPPoE标识也是OLT根据预先存储在OLT本地的第一对应关系所确定的,并不需要BRAS的参与。因此,从OLT接收第一请求报文到OLT向第一ONT发送第一响应报文的过程中,报文从始至终都不需要经过BRAS,而是直接在ONT与OLT之间传输,相较于现有的经BRAS绕行的方案,简化了报文在ONT与OLT之间传输的会话流程,降低了第一ONT获取第一响应报文的时延。
综上,通过本申请实施例提供的数据传输方法,既不需要改变ONT与OLT之间传输的报文类型,不需要在ONT与OLT之间开设新的报文类型的接口;又简化了会话流程,报文不需要从BRAS绕行,降低了ONT与OLT之间交互数据的时延;从而降低了应用服务下放到OLT等边缘设备所付出的代价。
在本申请实施例中,OLT可以包括路由模块和计算模块。如图3a所示,若应用服务下放到OLT,则目标设备为OLT,具体由OLT的计算模块提供应用服务,因此UE上的APP向OLT的计算模块请求第一目标数据。于是,APP向第一ONT发送报文①,以通过第一ONT向OLT发送请求报文。第一ONT将报文①的源地址替换为第一ONT的地址,并在包头打上第一PPPoE标识(第一ONT与BRAS之间的PPPoE会话的标识),得到报文②,并向OLT发送报文②。由于APP向OLT的计算模块请求第一目标数据,因此报文①和报文②的目的地址均为OLT计算模块的IP地址。本实施例中的报文②即为图2所示实施例中的第一请求报文。
如图3a所示,OLT的路由模块预先保存有路由表。路由表为报文的目的地址与下一跳地址之间的对应关系。在路由表中,目标设备的地址对应的下一跳为目标设备,非目标设备的地址对应的下一跳为BRAS。因此与OLT计算模块的IP地址对应的下一跳为计算模块。因此,路由模块剥离报文②的PPPoE头部,得到报文③,并向OLT的计算模块发送报文③。在本申请实施例中,报文③也称为第一目标请求报文。
在本申请实施例中,OLT路由模块上预先保存的路由表也可以以其他形式存在,例如重定向表等,只要能反映报文的目的地址与下一跳之间的对应关系即可,本申请对此不做限定。
计算模块接收报文③,解析报文③的载荷得到第一目标数据的标识。根据第一目标数据的标识获取第一目标数据。由于报文③的目的地址和源地址分别为OLT计算模块的IP地址和第一ONT的IP地址,因此计算模块分别将第一ONT的IP地址和OLT计算模块的IP地址作为目的地址和源地址,将第一目标数据作为载荷,封装得到报文④,并向路由模块发送报文④。在本申请实施例中,报文④也称为第一目标响应报文。
如图3a所示,OLT的路由模块还预先保存有第一对应关系。第一对应关系为ONT的标识与PPPoE标识之间的对应关系。OLT可以根据第一对应关系中ONT的标识与PPPoE标识之间的对应关系,决定打在下行报文(向ONT发送的报文)上的PPPoE标识。因此,路由模块可以根据报文④的目的地址为第一ONT的地址,从第一对应关系中查询到对应于第一ONT标识的第一PPPoE标识,从而在报文④上打上第一PPPoE标识,得到报文⑤,并向第一ONT发送报文⑤。本实施例中的报文⑤即为图2所示实施例中的第一响应报文。第一响应报文(报文⑤)即为在第一目标响应报文(报文④)的包头上打上第一PPPoE标识所得的报文。
在第一对应关系中,第一ONT的标识可以是第一ONT的身份标识号(identitydocument,ID)、第一ONT的IP地址、第一ONT的MAC地址、第一请求报文(报文②)的五元组信息等,只要能标识第一ONT即可。与第一ONT的标识对应的第一PPPoE标识,可以是第一ONT与BRAS之间的PPPoE会话的标识。
第一ONT接收报文⑤,剥离报文⑤中的PPPoE头部,将目的地址替换为UE的IP地址,得到报文⑥,并向运行在UE上的APP发送报文⑥,从而为APP提供第一目标数据,实现应用服务向OLT的下放。
可选的,除了OLT计算模块的IP地址,报文②的目的地址,即第一请求报文的目的地址(也是第一响应报文的源地址),也可以是OLT计算模块的媒体存取控制(media accesscontrol,MAC)地址等,只要能标识OLT的计算模块即可,本申请对此不做限定。因此,图3a中报文①至③的目的地址,以及报文④至⑥的源地址,均可以替换为其他用于标识OLT计算模块的地址。
同理,报文⑤的目的地址,即第一响应报文的目的地址(也是第一请求报文的源地址),也可以是第一ONT的MAC地址等,只要能标识第一ONT即可,本申请对此不做限定。因此,图3a中报文②至③的目的地址,以及报文④至⑤的源地址,均可以替换为其他用于标识第一ONT的地址。
在本申请实施例中,路由模块根据路由表,将目的地址为目标设备的地址的报文拦截住,进行报文格式的转换后(PPPoE格式转换为IpoE等格式)发送给目标设备,防止从ONT到OLT的上行报文从BRAS绕行。通过第一对应关系,也防止了从OLT到ONT的下行报文从BRAS绕行。因此,实现了ONT与OLT之间报文在两设备间的直接交互,简化了报文传输流程,降低了应用服务向OLT下放的代价。
可选的,应用服务也可以下放到与OLT连接的目标设备,在这种情况下,OLT中的路由模块可以作为PPPoE报文与目标设备可读格式(例如IPoE格式)报文的转换设备,实现第一ONT与目标设备之间的交互,从而实现应用服务到目标设备的下放。下面结合图3b说明APP向目标设备请求第一目标数据的情况。
由于图3b与图3a的区别在于APP请求第一目标数据的对象不同(图3a是向OLT上的计算模块请求,图3b是向OLT外的目标设备请求),因此图3b中的报文①至③与图3a中的报文①至③,区别在于目的地址从OLT计算模块的地址改为了目标设备的地址,以及根据路由表,OLT将报文③发送给OLT外的目标设备而不是OLT的计算模块。报文①至③的其他细节参见图3a的说明,此处不再赘述。
同理,图3b中的报文④至⑥与图3a中的报文④至⑥,区别在于源地址从OLT计算模块的地址改为了目标设备的地址,以及报文④是由目标设备而不是由OLT计算模块向OLT路由模块发送的。报文④至⑥的其他细节参见图3a的说明,此处不再赘述。
在本申请实施例中,OLT将目的地址为目标设备的PPPoE报文的格式改变,变为目标设备可读格式的报文(例如IPoE报文),通过OLT,即可实现ONT与目标设备之间的数据传输,报文不需要绕行BRAS来改变报文格式,会话流程简单,也不需要改变路由模块和ONT之间传输报文的格式,降低了应用服务向OLT外的目标设备下放的成本。
可选的,若目标设备是OLT之外的设备,则在步骤203中,目标设备可以将第一目标数据承载在第一目标响应报文中发送给OLT。OLT可以根据第一目标响应报文的五元组确定第一目标响应报文的内容用于发送给第一ONT。从而OLT可以根据第一对应关系确定与第一ONT的标识对应的第一PPPoE标识。OLT在第一目标请求报文的包头中打上第一PPPoE标识,得到PPPoE格式的第一响应报文,实现报文格式的转换。使得目标设备通过OLT实现与ONT之间的数据传输,目标设备于是实现了为APP提供应用服务,实现了应用服务到(与OLT连接的目标设备)的下放。
由图2和图3a、图3b所示的实施例可知,OLT上预先保存了第一对应关系。示例地,OLT可以通过配置消息、第一ONT与OLT之间的PPPoE会话报文、第一ONT之前的请求报文等获取第一对应关系,下面举例说明。
可选的,OLT可以根据配置消息获取第一PPPoE标识与第一ONT的标识之间的对应关系,从而保存第一对应关系。请参阅图4,根据配置消息保存第一对应关系的具体流程包括:
401、第一ONT向BRAS发送PPPoE上线请求。
第一ONT向BRAS发送PPPoE上线请求,以获取第一ONT与BRAS之间的PPPoE会话(PPPoE session)标识,即本申请实施例中的第一PPPoE标识。
402、BRAS向第一ONT发送PPPoE上线响应。
BRAS为第一ONT分配了第一PPPoE标识后,就可以向第一ONT发送PPPoE上线响应,该响应中包括第一PPPoE标识,用于向第一ONT通知第一ONT对应于第一PPPoE标识。在第一ONT与BRAS之间,所传输的报文都要打上第一PPPoE标识。
403、BRAS向OLT发送配置消息。
BRAS为第一ONT分配第一PPPoE标识后,就可以向第一ONT所属的OLT(即与第一ONT通过光纤连接的OLT)发送配置消息。配置消息包括第一ONT的标识和第一PPPoE标识,配置消息用于向OLT指示第一PPPoE标识与第一ONT的标识之间的对应关系。
其中,配置消息中的第一ONT的标识,可以是第一ONT的ID。除此之外,第一ONT的标识也可以是第一ONT的IP地址、MAC地址、SN号等,只要能标识第一ONT即可,本申请对此不做限定。
可选的,配置消息中还可以包括其他ONT与其他PPPoE的对应关系,从而使得OLT确定这些对应关系,保存包括这些对应关系的第一对应关系,本申请对此不做限定。
可选的,步骤403也可以在步骤402之前或与402同时执行,只要在步骤401之后执行即可,本申请对此不做限定。
由于第一ONT与BRAS之间的报文传输通过OLT中转,因此OLT可以获取第一ONT与BRAS之间传输的PPPoE会话报文。可选的,在第一ONT上线后,除了通过配置消息,OLT也可以通过第一ONT与BRAS之间传输的PPPoE会话报文,确定第一ONT的标识与第一PPPoE标识之间的对应关系(根据PPPoE会话的源地址或目的地址为第一ONT、PPPoE头部为第一PPPoE标识,确定上述对应关系),此处不做限定。
404、OLT保存第一对应关系。
接收了配置消息,OLT就可以根据配置消息,确定第一PPPoE标识与第一ONT的标识之间的对应关系。然后,OLT可以在已经保存好的PPPoE标识与ONT的标识的对应关系的集合中,加上第一PPPoE标识与第一ONT的标识之间的对应关系,得到第一对应关系,并保存第一对应关系。
可选的,若配置消息中包括其他ONT与其他PPPoE的对应关系,则OLT可以将这些对应关系都保存起来,得到并保存第一对应关系。
405、APP向应用服务器发送业务请求。
当APP有业务需求时,例如APP请求获取第一目标数据,则APP可以向应用服务器发送业务请求。业务请求包括第一目标数据的标识,业务请求用于向应用服务器请求第一目标数据。
本申请实施例不限定应用服务器的类型,应用服务器可以是视频服务器、运算服务器等。示例地,若APP向应用服务器请求A电影的视频数据,则APP可以向视频服务器发送业务请求,请求中包括A电影的标识;若APP请求获取待计算数据的运算结果,则APP可以向运算服务器发送业务请求。
406、应用服务器向APP发送业务响应。
在本申请实施例中,应用服务下放至OLT等边缘设备(即前面所述的目标设备),因此应用服务器可以确定为第一ONT提供应用服务的目标设备。然后,应用服务器向第一ONT发送业务响应。业务响应中包括为第一ONT提供服务的目标设备的标识,业务响应用于指示APP向目标设备请求第一目标数据。
可选的,为APP提供应用服务的可能是OLT中的某个计算模块,因此业务响应中所包括的目标设备的标识,具体可以是OLT上为APP提供应用服务的计算模块的标识,例如该计算模块的IP地址、端口号等,只要能标识该计算模块即可,本申请对此不做限定。
可选的,应用服务也可以下放至与OLT连接的目标设备,因此应用服务器可以确定为第一ONT提供应用服务的目标设备。于是,应用服务器向第一ONT发送的业务响应中可以包括为第一ONT提供服务的目标设备的标识,业务响应用于指示APP向目标设备请求第一目标数据。
在本申请实施例中,该业务响应也称为重定向报文,用于APP重新确定请求目标数据的对象(例如前述的OLT的计算模块或目标设备等)。
407、APP通过第一ONT向OLT发送第一请求报文。
若应用服务下放至OLT的计算模块,步骤407参见图3a中,APP向第一ONT发送报文①,第一ONT向OLT发送报文②的过程,此处不再赘述。若应用服务下放至与OLT连接的目标设备,步骤407参见图3b中对应步骤的说明,此处不再赘述。
408、OLT生成第一响应报文。
步骤408参见图2中的步骤202的说明,以及图3a或图3b中报文③、报文④的发送和报文⑤的获取过程,此处不再赘述。
409、OLT通过第一ONT向APP发送第一响应报文。
该步骤参见图3a或图3b中,第一ONT向APP发送报文⑥的过程,此处不再赘述。
410、若OLT发现第一ONT与BRAS之间的会话中断,则OLT停止向第一ONT发送报文。
在本申请实施例中,OLT用于代替BRAS,实现报文在PPPoE格式与其他格式(例如IPoE格式)之间的转化。可选的,若第一ONT与BRAS之间的握手中断,则OLT可以暂停进行报文格式转换。
具体的,OLT可以跟踪第一ONT与BRAS之间的链路控制协议(link controlprotocal,LCP)报文。若发现LCP握手报文中断,确定第一ONT与BRAS之间的通信中断,则OLT可以停止向第一ONT发送报文,和/或,停止获取(向第一ONT发送的)报文所执行的动作。
可选的,步骤410也可以在步骤407至409中任一步之前或与步骤407至409中任一步同时执行,此处不作限定。
在本申请实施例中,配置消息可以是OLT在第一ONT上线时接收的。通过配置消息传递第一PPPoE标识与第一ONT之间的对应关系,使得第一ONT一完成上线,就可以与OLT以PPPoE的报文格式进行数据交互。
可选的,OLT可以根据第一请求报文获取第一PPPoE标识与第一ONT的标识之间的对应关系,从而保存第一对应关系。请参阅图5,根据第一请求报文保存第一对应关系的具体流程包括:
501、第一ONT向BRAS发送PPPoE上线请求。
502、BRAS向第一ONT发送PPPoE上线响应。
503、APP向应用服务器发送业务请求。
504、应用服务器向APP发送业务响应。
步骤501至504参见图4所示实施例的步骤401、402和步骤405、406,此处不再赘述。
505、APP通过第一ONT向OLT发送第一请求报文。
该步骤参见图4所示实施例的步骤407,此处不再赘述。
506、OLT保存第一对应关系。
OLT可以根据第一请求报文中包括第一PPPoE标识,以及第一请求报文的源地址为第一ONT的地址,确定第一PPPoE与第一ONT的标识之间的对应关系。
具体的,OLT可以根据第一请求报文中的第一PPPoE标识解析第二请求报文的包头,确定第一请求报文的目的地址和源地址分别为目标设备的地址和第一ONT的地址。然后,OLT可以根据第一请求报文的目的地址为目标设备的地址,确定第一PPPoE标识与第一ONT的标识之间的对应关系。然后,OLT可以在已经保存好的PPPoE标识与ONT的标识的对应关系的集合中,加上第一PPPoE标识与第一ONT的标识之间的对应关系,得到第一对应关系,并保存第一对应关系。
其中,在保存第一对应关系的过程中,确定的第一ONT的标识与第一PPPoE标识之间的对应关系中,第一ONT的标识可以是第一请求报文的五元组信息。除此之外,第一ONT的标识也可以是第一ONT的ID、IP地址、MAC地址、SN号等,只要能标识第一ONT即可,本申请对此不做限定。
507、OLT生成并通过第一ONT向APP第二响应报文。
第一目标数据可以由具有前后时序的多个数据块组成。在OLT封装第一目标数据中较为前序的第一数据块时,可以直接根据第一请求报文确定第一PPPoE标识并在包括第一数据块的第二响应报文中打上第一PPPoE标识。
具体的,OLT可以将第一目标数据的第一数据块作为载荷,将第一ONT的地址作为包头中的目的地址,以及根据第一请求报文(中的第一PPPoE标识)将第一PPPoE标识作为PPPoE头部进行封装得到第二响应报文,并向第一ONT发送第二响应报文。然后,第一ONT再向APP发送第二响应报文。
第二响应报文的获取过程参见图3a或图3b中报文③、报文④的发送和报文⑤的获取过程,此处不再赘述。
508、OLT生成第一响应报文。
在OLT封装第一目标数据中较为后序的第二数据块时,由于第一请求报文的信息可能已被消除,因此OLT可以根据步骤506中保存的第一对应关系确定第一PPPoE标识并在包含第二数据块的第一响应报文中打上第一PPPoE标识。
具体的,OLT可以将第一目标数据的第二数据块作为载荷,将第一ONT的地址作为包头中的目的地址和根据第一对应关系(第一ONT的标识对应于第一PPPoE标识)将第一PPPoE标识作为报文标识进行封装得到第一响应报文。
第一响应报文的获取过程参见图3a或图3b中报文③、报文④的发送和报文⑤的获取过程,此处不再赘述。
509、OLT通过第一ONT向APP发送第一响应报文。
OLT向第一ONT发送第一响应报文。然后,第一ONT再向APP发送第一响应报文。
510、若OLT发现第一ONT与BRAS之间的会话中断,则OLT停止向第一ONT发送报文。
步骤510参见图4所示实施例的步骤410,此处不再赘述。
可选的,步骤510也可以在步骤507至509中任一步之前或与步骤507至509中任一步同时执行,此处不作限定。
在本申请实施例中,OLT根据第一请求报文中包括第一PPPoE标识,就能确定第一PPPoE标识与第一ONT的标识之间的对应关系,从而保存第一对应关系。OLT不需要通过额外的消息或报文来获取第一PPPoE标识与第一ONT的标识之间的对应关系,防止网络资源浪费于生成和传输该额外消息或报文。
可选的,OLT可以根据第一ONT在第一请求报文之前向OLT发送的第二请求报文获取第一PPPoE标识与第一ONT的标识之间的对应关系,从而保存第一对应关系。请参阅图6,根据第二请求报文保存第一对应关系的具体流程包括:
601、第一ONT向BRAS发送PPPoE上线请求。
602、BRAS向第一ONT发送PPPoE上线响应。
步骤601和602参见图4所示实施例的步骤401和402,此处不再赘述。
603、APP向应用服务器发送业务请求。
当APP有业务需求时,例如APP请求获取第二目标数据,则APP可以向应用服务器发送业务请求。业务请求包括第二目标数据的标识,业务请求用于向应用服务器请求第二目标数据。
应用服务器的类型和对应的目标数据的标识参见图4所示实施例中步骤405的说明,此处不再赘述。
604、应用服务器向APP发送业务响应。
应用服务器可以确定为第一ONT提供应用服务的目标设备,并向第一ONT发送业务响应。业务响应中包括为第一ONT提供服务的目标设备的标识,业务响应用于指示APP向目标设备请求第二目标数据。
对业务响应的具体说明参见图4所示实施例的步骤406,此处不再赘述。
605、APP通过第一ONT向OLT发送第二请求报文。
APP通过第一ONT向OLT发送第二请求报文,第二请求报文包括第一PPPoE标识和第二目标数据的标识,第二请求报文用于请求第二目标数据。第二请求报文的目的地址和源地址分别为目标设备的地址和第一ONT的地址。
606、OLT保存第一对应关系。
若第一PPPoE标识为,OLT已保存的ONT的标识与PPPoE标识之间的对应关系中,没出现过的PPPoE标识。则OLT可以根据第二请求报文保存第一PPPoE标识的对应关系。
具体的,OLT根据第二请求报文中包括未出现过的PPPoE标识(第一PPPoE标识),解析第二请求报文(的包头),确定第二请求报文的目的地址和源地址分别为目标设备的地址和第一ONT的地址。然后,OLT根据第二请求报文的目的地址为目标设备的地址,保存第一PPPoE标识与第一ONT的标识之间的对应关系,得到第一对应关系。
其中,在保存第一对应关系的过程中,所确定的第一ONT的标识与第一PPPoE标识之间的对应关系中,第一ONT的标识可以是第二请求报文的五元组信息。除此之外,第一ONT的标识也可以是第一ONT的ID、IP地址、MAC地址、SN号等,只要能标识第一ONT即可,本申请对此不做限定。
607、OLT生成并通过第一ONT向APP发送第三响应报文。
OLT还可以解析第二请求报文的载荷,得到第二目标数据的标识。然后,OLT根据第二目标数据的标识获取第二目标数据。接下来,OLT将第二目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和根据第二请求报文(中的第一PPPoE标识)将第一PPPoE标识作为PPPoE头部进行封装得到第三响应报文。获取了第三响应报文,OLT就可以通过第一ONT向APP发送第三响应报文。
608、APP通过第一ONT向OLT发送第一请求报文。
609、OLT生成第一响应报文。
610、OLT通过第一ONT向APP发送第一响应报文。
步骤608至610参见图4所示实施例中步骤407至409的说明,此处不再赘述。
可选的,在步骤603至607中,业务响应和第二请求报文中的目标设备的标识,与步骤608至步骤610中目标设备的标识,可以指向不同的目标设备。只要上述两种目标设备与第一ONT之间的通信都经过OLT(即都可能用到第一对应关系)即可,此处不做限定。
611、若OLT发现第一ONT与BRAS之间的会话中断,则OLT停止向第一ONT发送报文。
步骤611参见图4所示实施例的步骤410,此处不再赘述。
可选的,步骤611也可以在步骤607至610中任一步之前或与步骤607至610中任一步同时执行,此处不作限定。
前面说过,OLT可以通过自身获取第一目标数据(例如从本地调用等),也可以从外部的设备获取,接下来举例说明通过外部设备获取第一目标数据的过程。
在点播的方案中,OLT从数据存储设备处获取第一目标数据。请参阅图7,点播方案的流程包括:
701、第一ONT向BRAS发送PPPoE上线请求。
702、BRAS向第一ONT发送PPPoE上线响应。
703、APP向应用服务器发送业务请求。
704、应用服务器向APP发送业务响应。
705、APP通过第一ONT向OLT发送第一请求报文。
步骤701至705参见图4所示实施例的步骤401至405,此处不再赘述。
706、OLT向数据存储设备发送第三请求报文。
由于OLT本地并没有第一目标数据,而数据存储设备上保存了第一目标数据,或数据存储设备可以实时获取第一目标数据(例如直播场景下),则OLT可以向数据存储设备引流第一目标数据。
具体的,OLT可以根据第一请求报文,向数据存储设备发送第三请求报文。第三请求报文包含(解析第一请求报文所得的)第一目标数据的标识,第三请求报文用于向数据存储设备请求第一目标数据。
可选的,数据存储设备可以是个人计算机(personal computer,PC)、服务器、专门的存储设备等,本申请对此不做限定。
707、数据存储设备向OLT发送第四响应报文。
OLT可以接收来自数据存储设备的第四响应报文,第四响应报文包含第一目标数据。OLT解析第四响应报文,就可以得到第一目标数据。
708、OLT生成第一响应报文。
获取了第一目标数据,OLT就可以将第一目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和根据第一对应关系(中第一ONT的标识对应于第一PPPoE标识)将第一PPPoE标识作为报文标识进行封装,得到第一响应报文。
其中,第一对应关系可以是通过图4至图6中的任一种方式预先保存的,本申请对此不做限定。
709、OLT通过第一ONT向APP发送第一响应报文。
步骤709参见图4所示实施例的步骤409,此处不再赘述。
710、若OLT发现第一ONT与BRAS之间的会话中断,则OLT停止向第一ONT发送报文。
步骤710参见图4所示实施例的步骤410,此处不再赘述。
可选的,步骤710也可以在步骤705至709中任一步之前或与步骤705至709中任一步同时执行,此处不作限定。
可选的,在点播方案中,若OLT已经根据别的ONT的请求,将从数据存储设备引流第一目标数据,则OLT可以直接使用之前引流的第一目标数据。如图8所示,具体流程包括:
801、第一ONT向BRAS发送PPPoE上线请求。
802、BRAS向第一ONT发送PPPoE上线响应。
步骤801和802参见图4所示实施例的步骤401和402,此处不再赘述。
803、第二ONT向OLT发送第四请求报文。
如图1所示,OLT下可能连接了多个ONT。若OLT还连接了第二ONT,则第二ONT可以向OLT发送第四请求报文,第四请求报文包含第一目标数据的标识,第四请求报文用于向OLT请求第一目标数据。
804、OLT向数据存储设备发送第五请求报文。
由于OLT本地并没有第一目标数据,而数据存储设备上保存了第一目标数据,或数据存储设备可以实时获取第一目标数据(例如直播场景下),则OLT可以向数据存储设备引流第一目标数据。
具体的,OLT可以根据第四请求报文,向数据存储设备发送第五请求报文。第五请求报文包含(解析第一请求报文所得的)第一目标数据的标识,第五请求报文用于向数据存储设备请求第一目标数据。
可选的,数据存储设备可以是个人计算机(personal computer,PC)、服务器、专门的存储设备等,本申请对此不做限定。
805、数据存储设备向OLT发送第五响应报文。
然后,OLT可以接收来自数据存储设备的第五响应报文,第五响应报文包含第一目标数据,OLT解析第五响应报文,就可以得到第一目标数据。
806、APP向应用服务器发送业务请求。
807、应用服务器向APP发送业务响应。
808、APP通过第一ONT向OLT发送第一请求报文。
步骤806至808参见图4所示实施例的步骤405至407,此处不再赘述。
其中,只要保证步骤808在步骤806、807之后执行,以及步骤808在步骤803之后执行即可,本申请实施例不限定步骤803至805与步骤806至807之间的先后顺序,=这两串步骤可以同时执行也可以先后执行,此处不做限定。
809、OLT生成第一响应报文。
OLT可以解析第一业务请求的载荷,得到第一目标数据的标识。由于在步骤804和805中,OLT已经根据第二ONT的第四请求报文,将第一目标数据从数据存储设备处引流过来了,因此OLT可以根据解析(第一请求报文)所得的第一目标数据的标识,获取来自第五响应报文的第一目标数据。
通过第五响应报文获取了第一目标数据,OLT就可以将第一目标数据作为载荷,将第一ONT的地址作为包头中的目的地址和根据第一对应关系(中第一ONT的标识对应于第一PPPoE标识)将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文。
其中,第一对应关系可以是通过图4至图6中的任一种方式预先保存的,本申请对此不做限定。
810、OLT通过第一ONT向APP发送第一响应报文。
步骤810参见图4所示实施例的步骤409,此处不再赘述。
811、若OLT发现第一ONT与BRAS之间的会话中断,则OLT停止向第一ONT发送报文。
步骤811参见图4所示实施例的步骤410,此处不再赘述。
可选的,步骤811也可以在步骤808至810中任一步之前或与步骤808至810中任一步同时执行,此处不作限定。
在本申请实施例中,若其他的ONT(例如第二ONT)已经向数据存储设备请求过第一目标数据了,OLT可以直接使用根据别的ONT的请求所获取的第一目标数据,不需要再次向数据存储设备请求第一目标数据,减小了OLT获取第一响应报文的时延。
可选的,若目标设备为OLT之外的设备(且通过OLT实现与第一ONT之间的通信),则APP向目标设备请求目标数据的流程,如图9所示,该流程包括:
901、第一ONT向BRAS发送PPPoE上线请求。
902、BRAS向第一ONT发送PPPoE上线响应。
903、APP向应用服务器发送业务请求。
步骤901至903参见图4所示实施例的步骤401、402和405,此处不再赘述。
904、应用服务器向APP发送业务响应。
若应用服务下放至与OLT连接的目标设备,应用服务器可以确定为第一ONT提供应用服务的目标设备。于是,应用服务器向第一ONT发送的业务响应中可以包括为第一ONT提供服务的目标设备的标识,业务响应用于指示APP向目标设备请求第一目标数据。
905、APP通过第一ONT向OLT发送第一请求报文。
该步骤参见图3b中,APP向第一ONT发送报文①,第一ONT向OLT发送报文②的过程,此处不再赘述。
906、OLT剥离第一请求报文的PPPoE头部得到第一目标请求报文,并向目标设备发送第一目标请求报文。
该步骤参见图3b中,OLT向目标设备发送报文③的过程。
可选的,OLT可以剥离第一请求报文的PPPoE头部,并将第一请求报文的源地址由第一ONT的地址替换为OLT的地址,得到第一目标请求报文,并向目标设备发送第一目标请求报文。从而将ONT与目标设备之间的会话,转换为OLT与目标设备之间的会话(该会话包括第一目标请求报文),通过转换后的会话获取第一目标数据。
可选的,上述替换地址的过程,可以通过网络端口地址转换(network addressport translation,NAPT)实现。NAPT表中可以预先保存第一五元组与第二五元组之间的对应关系。其中,第一五元组为ONT与通信设备之间会话的五元组,第二五元组为OLT与通信设备之间会话的五元组。NAPT表用于实现第一会话与第二会话之间的转换。其中,第一会话为ONT与通信设备之间的会话,第二会话为OLT与通信设备之间的之间的会话。
示例地,OLT可以确认第一请求报文的五元组为:
源地址 源端口号 协议 目的地址 目的端口号
第一ONT的地址 第一ONT的端口号 协议 目标设备的地址 目标设备的端口号
该五元组也称为目标第一五元组。
OLT可以从NAPT表中,确认与目标第一五元组对应的目标第二五元组为:
源地址 源端口号 协议 目的地址 目的端口号
OLT的地址 OLT的端口号 协议 目标设备的地址 目标设备的端口号
OLT根据目标第二五元组,将第一请求报文的源地址和源端口号由(第一ONT的地址;第一ONT的端口号)替换为(OLT的地址;OLT的端口号)。
可选的,目标第一五元组中的源地址(第一ONT的地址)和源端口号,可以是第一ONT在私网(OLT与第一ONT之间的私网)内的地址和端口号;目标第二五元组中的源地址(OLT的地址)和源端口号,可以是OLT在公网(私网之外的网络)内的地址和端口号。通过步骤906,可以实现私网报文向公网报文的转换,从而实现向公网中的目标设备请求第一目标数据。
可选的,若NAPT表中尚未建立目标第一五元组与目标第二五元组之间的对应关系,OLT也可以临时建立,本申请对此不做限定。
在本申请实施例中,第一五元组与第二五元组之间的对应关系也称为第二对应关系,除了NAPT表,也可以通过其他方式实现,例如网络地址转换(network addresstranslation,NAT)等,本申请对此不做限定。
907、OLT接收来自目标设备的第一目标响应报文。
该步骤参见图3b中,OLT向目标设备发送报文④的过程,此处不再赘述。
908、OLT在第一目标响应报文上打上第一PPPoE标识得到第一响应报文。
该步骤参见图3b中,OLT向第一ONT发送报文⑤,第一ONT向APP发送报文⑥的过程。可选的,OLT可以确认第一目标响应报文的五元组为:
源地址 源端口号 协议 目的地址 目的端口号
目标设备的地址 目标设备的端口号 协议 OLT的地址 OLT的端口号
该五元组也是步骤906中的目标第二五元组。
OLT可以根据步骤906中的第二对应关系(例如NAPT表),确认与目标第二五元组对应的目标第一五元组为:
源地址 源端口号 协议 目的地址 目的端口号
目标设备的地址 目标设备的端口号 协议 第一ONT的地址 第一ONT的端口号
OLT根据目标第一五元组,将第一目标响应报文的目的地址和目的端口号由(OLT的地址;OLT的端口号)替换为(第一ONT的地址;第一ONT的端口号)。由于替换后的目的地址为第一ONT的地址,OLT可以根据第一对应关系,确定与第一ONT的标识对应的第一PPPoE标识,在第一目标响应报文的包头上打上第一PPPoE标识,从而获取第一响应报文。
可选的,目标第二五元组中的目的地址(OLT的地址)和目的端口号,可以是OLT在公网(私网之外的网络)内的地址和端口号;目标第一五元组中的目的地址(第一ONT的地址)和目的端口号,可以是第一ONT在私网(OLT与第一ONT之间的私网)内的地址和端口号。通过步骤906,可以实现公网报文向私网报文的转换,从而实现公网中的目标设备向私网发送第一目标数据。
909、OLT通过第一ONT向APP发送第一响应报文。
910、若OLT发现第一ONT与BRAS之间的会话中断,则OLT停止向第一ONT发送报文。
步骤910参见图4所示实施例的步骤410,此处不再赘述。
可选的,步骤910也可以在步骤905至909中任一步之前或与步骤905至909中任一步同时执行,此处不作限定。
若ONT与目标设备之间的报文经过OLT传输,则通过本申请实施例提供的方法,可以避免报文在OLT与ONT之间传输的过程中,从BRAS绕行,简化了目标设备为ONT提供应用服务的报文传输流程,降低了应用服务下放至OLT外的目标设备的代价。
需要说明的是,图7中的步骤708至709、图8中的步骤803至809,以及图9中的步骤906至908,描述了OLT生成第一响应报文的不同方法,这些方法都可以应用在前面实施例中生成第一响应报文的步骤中(例如图2中的步骤204、图4中的步骤408、图5中的步骤508、图6中的步骤609等)。而图4至图6中所述的保存第一对应关系的方法,也可以应用在图7至图9所示的实施例中,本申请对此不做限定。
本申请实施例还提供另外一种OLT的结构。如图10所示,OLT 1000中可以包括处理器1010和存储器1020。OLT 1000可以作为图1至图9所示实施例中的OLT,用于实现图2至图10中任一项所述的数据传输方法。
基于以上实施例,本申请实施例还提供了一种芯片。该芯片包括处理器,用于实现上述任意一个或多个实施例所涉及的功能,以实现图2至图8中任一项所述的数据传输方法。可选地,所述芯片还包括存储器,所述存储器,用于处理器所执行必要的程序指令和数据。该芯片,可以由芯片构成,也可以包含芯片和其他分立器件。
基于以上实施例,本申请实施例还提供了一种计算机存储介质。该存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时可实现前述图2至图8中任一项所示实施例提供的方法。所述计算机存储介质可以包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例中还提供一种计算机程序产品。当其在计算机上运行时,使得计算机执行如前述图2至图8中任一项所示实施例描述的方法中OLT所执行的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (24)

1.一种数据传输方法,其特征在于,包括:
OLT接收来自第一ONT的第一请求报文,所述第一请求报文包括第一目标数据的标识,所述第一请求报文用于请求所述第一目标数据,所述第一请求报文的目的地址为目标设备的地址;
所述OLT识别到所述第一请求报文的目的地址为所述目标设备的地址,所述OLT剥离所述第一请求报文的PPPoE头部,得到第一目标请求报文;
所述OLT根据所述第一目标请求报文获取所述第一目标数据;
所述OLT将所述第一目标数据作为载荷,将所述第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文;其中,所述第一PPPoE标识是在第一对应关系中,与所述第一ONT的标识对应的PPPoE标识;所述第一对应关系为预先保存的PPPoE标识与ONT的标识之间的对应关系;
所述OLT向所述第一ONT发送所述第一响应报文。
2.根据权利要求1所述的方法,其特征在于,在所述得到第一响应报文之前,所述方法还包括:
所述OLT接收配置消息,所述配置消息包括所述第一ONT的标识和所述第一PPPoE标识,所述配置消息用于指示所述第一PPPoE标识与所述第一ONT的标识之间的对应关系;
所述OLT根据所述配置消息,保存所述第一对应关系。
3.根据权利要求1所述的方法,其特征在于,在所述得到第一响应报文之前,所述方法还包括:
所述OLT接收PPPoE会话报文,所述PPPoE会话报文的源地址或目的地址为所述第一ONT的地址,所述PPPoE会话报文的PPPoE头部包括所述第一PPPoE标识;
所述OLT读取所述PPPoE会话报文,确定所述第一ONT的标识与所述第一PPPoE标识之间的对应关系,保存所述第一对应关系。
4.根据权利要求1所述的方法,其特征在于,在所述得到第一响应报文之前,所述方法还包括:
所述OLT识别到所述第一请求报文的目的地址为所述目标设备的地址,所述OLT解析所述第一请求报文的包头,确定所述第一请求报文的源地址和PPPoE头部分别为所述第一ONT的地址和所述第一PPPoE标识;
所述OLT保存所述第一PPPoE标识与所述第一ONT的标识之间的对应关系,得到所述第一对应关系。
5.根据权利要求4所述的方法,其特征在于,在所述得到第一响应报文之前,所述方法还包括:
所述OLT将所述第一目标数据的第一数据块作为载荷,将所述第一ONT的地址作为包头中的目的地址和将所述第一请求报文中的所述第一PPPoE标识作为PPPoE头部进行封装,得到第二响应报文,并向所述第一ONT发送所述第二响应报文;
所述OLT将所述第一目标数据作为载荷,将所述第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文,包括:
所述OLT将所述第一目标数据的第二数据块作为载荷,将所述第一ONT的地址作为包头中的目的地址和将所述第一对应关系中的所述第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文;其中,在所述第一目标数据中,所述第二数据块为所述第一数据块后序的数据块。
6.根据权利要求1所述的方法,其特征在于,在所述得到第一响应报文之前,所述方法还包括:
所述OLT接收来自所述第一ONT的第二请求报文,所述第二请求报文的PPPoE头部包括所述第一PPPoE标识,所述第二请求报文的目的地址和源地址分别为所述目标设备的地址和所述第一ONT的地址;
所述OLT识别到所述第二请求报文的目的地址为所述目标设备的地址,所述OLT解析所述第二请求报文的包头,确定所述第二请求报文的源地址和PPPoE头部分别为所述第一ONT的地址和所述第一PPPoE标识;
所述OLT保存所述第一PPPoE标识与所述第一ONT的标识之间的对应关系,得到所述第一对应关系。
7.根据权利要求6所述的方法,其特征在于,所述第二请求报文包括第二目标数据的标识,所述第二请求报文用于请求所述第二目标数据;所述方法还包括:
所述OLT剥离所述第二请求报文的PPPoE头部,得到第二目标请求报文;
所述OLT根据所述第二目标请求报文获取所述第二目标数据;
所述OLT将所述第二目标数据作为载荷,将所述第一ONT的地址作为包头中的目的地址和将所述第二请求报文中的所述第一PPPoE标识作为PPPoE头部进行封装,得到第三响应报文,并向所述第一ONT发送所述第三响应报文。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述OLT剥离所述第一请求报文的PPPoE头部,得到第一目标请求报文,包括:
所述OLT剥离所述第一请求报文的PPPoE头部,并将所述第一目标请求报文的源地址替换为所述OLT的地址,得到所述第一目标请求报文;
所述OLT根据所述第一目标请求报文获取所述第一目标数据,包括:
所述OLT向所述目标设备发送所述第一目标请求报文;
所述OLT接收来自所述目标设备的第一目标响应报文,所述第一目标响应报文包括所述第一目标数据,所述第一目标响应报文的目的地址为所述OLT的地址;
所述OLT将所述第一目标数据作为载荷,将所述第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文,包括:
所述OLT根据第二对应关系将所述第一目标响应报文的目的地址替换为所述第一ONT的地址,根据所述第一对应关系将所述第一PPPoE标识作为PPPoE头部,对所述第一目标响应报文进行封装得到所述第一响应报文;其中,所述第一ONT的地址为所述第二对应关系中与目标第二五元组对应的目标第一五元组中的ONT地址,所述第二对应关系为预先保存的第一五元组与第二五元组之间的对应关系,所述第一五元组为ONT与通信设备之间会话的五元组,所述第二五元组为OLT与所述通信设备之间的对应关系,所述目标第一五元组和所述目标第二五元组中的通信设备的地址均为所述目标设备的地址。
9.根据权利要求1至7中任一项所述的方法,其特征在于,所述OLT根据所述第一目标请求报文获取所述第一目标数据,包括:
所述OLT向所述数据存储设备发送第三请求报文,所述第三请求报文包括所述第一目标数据的标识,所述第三请求报文的目的地址为数据存储设备的地址,所述第三请求报文用于向所述数据存储设备请求所述第一目标数据;
所述OLT接收来自所述数据存储设备的第四响应报文,所述第四响应报文包括所述第一目标数据。
10.根据权利要求1至7中任一项所述的方法,其特征在于,在所述OLT根据所述第一目标请求报文获取所述第一目标数据之前,所述方法还包括:
所述OLT接收来自第二ONT的第四请求报文,所述第四请求报文包括所述第一目标数据的标识,所述第四请求报文用于向所述OLT请求所述第一目标数据;
所述OLT根据所述第四请求报文,向数据存储设备发送第五请求报文,所述第五请求报文包括所述第一目标数据的标识,所述第五请求报文用于向所述数据存储设备请求所述第一目标数据;
所述OLT接收来自所述数据存储设备的第五响应报文,所述第五响应报文包括所述第一目标数据;
所述OLT根据所述第一目标请求报文获取所述第一目标数据,包括:
所述OLT模块根据所述第一目标请求报文中的所述第一目标数据的标识,从所述第五响应报文中获取所述第一目标数据。
11.一种光纤线路终端OLT,其特征在于,包括路由模块和计算模块;
所述路由模块,用于:
接收来自第一ONT的第一请求报文,所述第一请求报文包括第一目标数据的标识,所述第一请求报文用于请求所述第一目标数据,所述第一请求报文的目的地址为目标设备的地址;
在识别到所述第一请求报文的目的地址为所述目标设备的地址的情况下,剥离所述第一请求报文的PPPoE头部,得到第一目标请求报文;
所述计算模块,用于根据所述第一目标请求报文获取所述第一目标数据;
所述路由模块,还用于:
将所述第一目标数据作为载荷,将所述第一ONT的地址作为包头中的目的地址和将第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文;其中,所述第一PPPoE标识是在第一对应关系中,与所述第一ONT的标识对应的PPPoE标识;所述第一对应关系为预先保存的PPPoE标识与ONT的标识之间的对应关系;
向所述第一ONT发送所述第一响应报文。
12.根据权利要求11所述的OLT,其特征在于,所述路由模块,还用于:
接收配置消息,所述配置消息包括所述第一ONT的标识和所述第一PPPoE标识,所述配置消息用于指示所述第一PPPoE标识与所述第一ONT的标识之间的对应关系;
根据所述配置消息,保存所述第一对应关系。
13.根据权利要求11所述的OLT,其特征在于,所述路由模块还用于:
接收PPPoE会话报文,所述PPPoE会话报文的源地址或目的地址为所述第一ONT的地址,所述PPPoE会话报文的PPPoE头部包括所述第一PPPoE标识;
读取所述PPPoE会话报文,确定所述第一ONT的标识与所述第一PPPoE标识之间的对应关系,保存所述第一对应关系。
14.根据权利要求11所述的OLT,其特征在于,所述路由模块还用于:
在识别到所述第一请求报文的目的地址为所述目标设备的地址的情况下,解析所述第一请求报文的包头,确定所述第一请求报文的源地址和PPPoE头部分别为所述第一ONT的地址和所述第一PPPoE标识;
保存所述第一PPPoE标识与所述第一ONT的标识之间的对应关系,得到所述第一对应关系。
15.根据权利要求14所述的OLT,其特征在于,所述路由模块还用于:
将所述第一目标数据的第一数据块作为载荷,将所述第一ONT的地址作为包头中的目的地址和将所述第一请求报文中的所述第一PPPoE标识作为PPPoE头部进行封装,得到第二响应报文,并向所述第一ONT发送所述第二响应报文;
将所述第一目标数据的第二数据块作为载荷,将所述第一ONT的地址作为包头中的目的地址和将所述第一对应关系中的所述第一PPPoE标识作为PPPoE头部进行封装,得到第一响应报文;其中,在所述第一目标数据中,所述第二数据块为所述第一数据块后序的数据块。
16.根据权利要求11所述的OLT,其特征在于,所述路由模块还用于:
接收来自所述第一ONT的第二请求报文,所述第二请求报文的PPPoE头部包括所述第一PPPoE标识,所述第二请求报文的目的地址和源地址分别为所述目标设备的地址和所述第一ONT的地址;
在识别到所述第二请求报文的目的地址为所述目标设备的地址的情况下,解析所述第二请求报文的包头,确定所述第二请求报文的源地址和PPPoE头部分别为所述第一ONT的地址和所述第一PPPoE标识;
保存所述第一PPPoE标识与所述第一ONT的标识之间的对应关系,得到所述第一对应关系。
17.根据权利要求16所述的OLT,其特征在于,第二请求报文包括第二目标数据的标识,所述第二请求报文用于请求所述第二目标数据;所述路由模块还用于:
剥离所述第二请求报文的PPPoE头部,得到第二目标请求报文;
根据所述第二目标请求报文获取所述第二目标数据;
将所述第二目标数据作为载荷,将所述第一ONT的地址作为包头中的目的地址和将所述第二请求报文中的所述第一PPPoE标识作为PPPoE头部进行封装,得到第三响应报文,并向所述第一ONT发送所述第三响应报文。
18.根据权利要求11至17中任一项所述的OLT,其特征在于,所述路由模块具体用于:
剥离所述第一请求报文的PPPoE头部,并将所述第一目标请求报文的源地址替换为所述OLT的地址,得到所述第一目标请求报文;
向所述目标设备发送所述第一目标请求报文;
接收来自所述目标设备的第一目标响应报文,所述第一目标响应报文包括所述第一目标数据,所述第一目标响应报文的目的地址为所述OLT的地址;
根据第二对应关系将所述第一目标响应报文的目的地址替换为所述第一ONT的地址,根据所述第一对应关系将所述第一PPPoE标识作为PPPoE头部,对所述第一目标响应报文进行封装得到所述第一响应报文;其中,所述第一ONT的地址为所述第二对应关系中与目标第二五元组对应的目标第一五元组中的ONT地址,所述第二对应关系为预先保存的第一五元组与第二五元组之间的对应关系,所述第一五元组为ONT与通信设备之间会话的五元组,所述第二五元组为OLT与所述通信设备之间的对应关系,所述目标第一五元组和所述目标第二五元组中的通信设备的地址均为所述目标设备的地址。
19.根据权利要求11至17中任一项所述的OLT,其特征在于,所述计算模块具体用于:
向所述数据存储设备发送第三请求报文,所述第三请求报文包括所述第一目标数据的标识,所述第三请求报文的目的地址为数据存储设备的地址,所述第三请求报文用于向所述数据存储设备请求所述第一目标数据;
接收来自所述数据存储设备的第四响应报文,所述第四响应报文包括所述第一目标数据。
20.根据权利要求11至17中任一项所述的OLT,其特征在于,所述路由模块还用于:
接收来自第二ONT的第四请求报文,所述第四请求报文包括所述第一目标数据的标识,所述第四请求报文用于向所述OLT请求所述第一目标数据;
根据所述第四请求报文,向数据存储设备发送第五请求报文,所述第五请求报文包括所述第一目标数据的标识,所述第五请求报文用于向所述数据存储设备请求所述第一目标数据;
接收来自所述数据存储设备的第五响应报文,所述第五响应报文包括所述第一目标数据;
所述计算模块具体用于:根据所述第一目标请求报文中的所述第一目标数据的标识,从所述第五响应报文中获取所述第一目标数据。
21.根据权利要求11至20中任一项所述的OLT,其特征在于,所述目标设备包括所述OLT,所述目标设备的地址包括所述计算模块的地址;
路由模块具体用于:向所述计算模块发送所述第一目标请求报文;
所述计算模块具体用于:
根据所述第一目标请求报文获取所述第一目标数据;
将所述第一目标数据作为载荷,将所述第一ONT的地址作为包头中的目的地址进行封装,得到第一目标响应报文,并向所述路由模块发送所述第一目标响应报文;
所述路由模块具体用于:根据所述第一对应关系将所述第一PPPoE标识作为PPPoE头部,对所述第一目标响应报文进行封装,得到所述第一响应报文。
22.一种光纤线路终端OLT,其特征在于,包括处理器和存储器;所述处理器与所述存储器耦合;
所述存储器,用于存储程序;
所述处理器,用于执行所述存储器中的程序,使得所述处理器执行如权利要求1至10中任一项所述的数据传输方法。
23.一种芯片,其特征在于,包括至少一个处理器和接口;
所述接口,用于为所述至少一个处理器提供程序指令或者数据;
所述至少一个处理器设置在光纤线路终端OLT内部,用于执行所述程序指令,以实现如权利要求1至10中任一项所述的方法。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被运行时,实现如权利要求1至10中任一项所述的方法。
CN202210550448.5A 2022-05-20 2022-05-20 一种数据传输方法、olt和相关设备 Pending CN117135216A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210550448.5A CN117135216A (zh) 2022-05-20 2022-05-20 一种数据传输方法、olt和相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210550448.5A CN117135216A (zh) 2022-05-20 2022-05-20 一种数据传输方法、olt和相关设备

Publications (1)

Publication Number Publication Date
CN117135216A true CN117135216A (zh) 2023-11-28

Family

ID=88855079

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210550448.5A Pending CN117135216A (zh) 2022-05-20 2022-05-20 一种数据传输方法、olt和相关设备

Country Status (1)

Country Link
CN (1) CN117135216A (zh)

Similar Documents

Publication Publication Date Title
CN113812126B (zh) 报文传输方法、装置及系统,可读存储介质
US11374899B2 (en) Managing network connectivity between cloud computing service endpoints and virtual machines
US10630387B2 (en) Method for establishing virtual access node in optical access network and device
CN110087102B (zh) 状态查询方法、装置及存储介质
US20030198223A1 (en) Method and apparatus for identifying data streams as networks
CN106911676A (zh) 多媒体网络数据处理系统
CN110035005B (zh) 数据处理方法和装置
US8724630B2 (en) Method and system for implementing network intercommunication
CN111092863B (zh) 访问互联网网站的方法、客户端、服务器、设备及介质
CN106550241B (zh) 视频业务识别系统及虚拟化部署方法
CN109196842B (zh) 一种会话保持方法、设备及存储介质
CN110049341B (zh) 视频处理方法和装置
CN110519009B (zh) 一种数据包传输方法和装置
CN112583718B (zh) 一种SRoU场景下SRv6报文传递方法、系统、设备及介质
CN110691139B (zh) 一种数据传输方法、装置、设备及存储介质
WO2016183926A1 (zh) 一种运营商级网络地址转换的方法及装置
CN110035297B (zh) 视频处理方法和装置
CN108064441B (zh) 一种加速网络传输优化方法以及系统
CN110545230A (zh) 用于转发vxlan报文的方法和装置
CN110336796B (zh) 一种通信方法和通信装置
CN109842630B (zh) 视频处理方法和装置
CN117135216A (zh) 一种数据传输方法、olt和相关设备
CN115499392A (zh) 租户隔离服务方法、装置,以及,电子设备
CN114301993A (zh) 一种数据传输方法、装置、终端设备和存储介质
CN110098993B (zh) 一种信令报文的处理方法和装置

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