一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于在支持多应用的终端之间安全地传送选择性数据集的系统和方法与流程

2022-02-24 17:47:53 来源:中国专利 TAG:


1.本发明的实施例涉及在终端之间安全地传送选择性数据集,并且更具体地,涉及用于在通过计算机网络连接的终端之间安全地传送选择性数据集的方法、系统和其中存储有计算机程序的非暂时性计算机可读介质。


背景技术:

2.在油气工业中,终端管理系统(tms)是一种自动化解决方案,其用于促进、监控和控制产品的分配,以及管理油库终端(bulk terminal)中的关键过程,以确保油库终端的最佳和安全操作。tms可以被分成两种领域,包括自动化、产品移动、驾驶员访问和库存控制,自动化提供油库自动化的管理。该系统还控制装载架和相关设备、泵、阀、马达、磅秤、仪表、读卡器、数据输入终端设备。第二种领域是销售票务。除了油库自动化功能之外,该系统还允许使用通过标准tcp/ip通信的单独公司计算机在tms自动化系统和公司数据系统之间进行数据交换,以便执行公司级功能,包括计费接口、报告和测量单元等。
3.当油库通过标准tcp/ip连接与公司网络通信以进行销售和计费交易时,即使使用复杂的防火墙和其它安全系统,也总是存在两个网络之间的黑客攻击或恶意软件扩散的可能性。因此,在油库tms系统和公司计费模块之间的当前tcp/ip连接容易受到各种类型的恶意软件或病毒或网络安全攻击的潜在黑客攻击和/或扩散。因为公司计费系统只需要基于文本的参数来完成销售交易并发出销售账单,所以可能不再需要可能潜在地阻碍系统安全性的完整tcp/ip通信会话。


技术实现要素:

4.因此,本发明的实施例在此描述了可以消除tcp/ip会话并利用以文本格式编码的选择性数据集传送的系统和方法,从而满足应用和网络安全性要求。
5.因此,一个示例实施例是一种用于在经由计算机网络连接的终端之间安全地传输选择性数据集的方法。该方法通过首先拦截网络连接并有效地中断tcp/ip会话来起作用,从而创建通信“间隙”以防止任何非法数据传输。该方法通过以下方式创建“间隙”:由第一通信装置经由在第一计算机上运行的第一同步多应用编程接口(api)接收互联网协议(ip)包/分组;由所述第一通信装置中的拆分单元将所述ip分组划分成命令部分和数据部分;由所述第一通信装置中的数据编码单元将所述数据部分编码为文本定界非ip格式;以及由所述第一通信装置中的传输单元传输所述编码的数据部分和所述命令部分。该方法还包括:由第二通信装置接收编码的数据部分和所述命令部分;由第二通信装置中的数据解码单元将编码的数据部分解码成ip格式,由第二通信装置中的构造器单元将解码的数据部分和命令部分组合以重新生成ip分组,以及由在第二计算机上运行的第二同步多应用api接收重新生成的ip分组。该方法还包括由第二通信装置经由在第二计算机上运行的第二同步多应用api接收第二ip分组,由第二通信装置中的拆分单元将第二ip分组划分成命令部分和数
据部分,由第二通信装置中的一个或多个处理器确定命令部分是否被列入白名单,如果命令部分被列入白名单,则由第二通信装置中的命令编码单元将命令部分编码成非ip格式,以及由第二通信装置中的传输单元传输编码的命令部分和数据部分。该方法还包括由第一通信装置接收编码的命令部分和数据部分,由第一通信装置中的命令解码单元将编码的命令部分解码成ip格式,由第一通信装置中的构造器单元将解码的命令部分和数据部分组合以重新生成第二ip分组,以及由在第一计算机上运行的第一同步多应用api接收重新生成的第二ip分组。数据部分可以包括仅为文本格式的客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。命令部分的编码可以包括使用出界数字命令电路系统对所述命令部分进行3位编码。数据部分的编码可以选自由双频音调编码、4ma至20ma编码、毫伏编码和光脉冲重复频率编码组成的组。
6.另一个示例性实施例是一种用于在终端之间安全地传输选择性数据的系统,包括分组剥离、传输变形和分组重构功能,以便不管原始数据类型和格式如何,仅允许在终端之间的文本内容传送,因此任何其它嵌入式格式化组件将被丢弃。
7.另一示例实施例是一种用于在经由计算机网络连接的终端之间安全地传输选择性数据集的系统。该系统包括:第一通信装置,其连接到网络上的第一计算机,该第一通信装置包括第一拆分单元、第一文本编码和解码单元、第一命令编码和解码单元、第一构造器单元、以及用于通过网络发送和接收ip分组的第一收发器;以及第二通信装置,其连接到网络上的第二计算机,该第二通信装置包括第二拆分单元、第二文本编码和解码单元、第二命令编码和解码单元、第二构造器单元、以及用于通过网络发送和接收ip分组的第二收发器,其中该第一通信装置被配置成经由运行在第一计算机上的第一同步多应用编程接口(api)接收因特网协议(ip)分组,使用第一拆分单元将ip分组划分成命令部分和数据部分,使用第一数据编码单元将数据部分编码成文本划界非ip格式,并且使用第一收发器传输编码的文本部分和命令部分。第二通信装置可被配置成接收编码的文本部分和命令部分,使用第二解码单元将编码的文本部分解码成ip格式,使用第二构造器单元组合解码的文本部分和命令部分以重新生成ip分组,以及将重新生成的ip分组传输到在第二计算机上运行的第二同步多应用api。第二通信装置还可以被配置为经由在第二计算机上运行的第二同步多应用api接收第二ip分组,使用第二拆分单元将第二ip分组划分为命令部分和数据部分,使用第二通信装置中的一个或多个处理器确定命令部分是否被列入白名单,使用第二命令编码单元将命令部分编码为非ip格式,以及使用第二收发器传输编码的命令部分和数据部分。第一通信装置还可被配置成接收编码的命令部分和数据部分,使用第一解码单元将编码的命令部分解码成ip格式,使用第一构造器单元组合解码的命令部分和数据部分以重新生成第二ip分组,以及将重新生成的第二ip分组传输到在第一计算机上运行的第一同步多应用api。数据部分可以包括客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。对命令部分进行编码可以包括使用出界数字命令电路系统对所述命令部分进行3位编码。编码的数据部分可以选自由双频音调编码、4ma至20ma编码、毫伏编码和光脉冲重复频率编码组成的组。
8.另一示例实施例是一种包括存储于其上的指令的非暂时性计算机可读介质,当由
操作地耦接到计算机可读介质的一个或多个处理器执行所述指令时,所述指令使得一个或多个处理器执行操作,所述操作包括经由在第一计算机上运行的第一同步多应用编程接口(api)接收互联网协议(ip)分组,将ip分组划分成命令部分和数据部分,将数据部分编码成文本定界非ip格式,以及传输编码的数据部分和命令部分。所述指令可进一步使所述一个或多个处理器执行包含以下各项的操作:接收编码的命令部分和数据部分;将所述编码的命令部分解码成ip格式;组合所述解码的命令部分与所述数据部分以重新生成第二ip分组;及传输所述重新生成的第二ip分组。
9.另一示例实施例是一种非暂时性计算机可读介质,包括存储在其上的指令,当由操作地耦接到计算机可读介质的一个或多个处理器执行时,所述指令使得一个或多个处理器执行操作,包括:接收编码的数据部分和命令部分,将编码的数据部分解码为ip格式,将解码的数据部分和命令部分组合以重新生成ip分组,以及传输重新生成的ip分组。所述指令还可以使所述一个或多个处理器执行操作,所述操作包括经由在第二计算机上运行的第二同步多应用api接收第二ip分组,将所述第二ip分组划分为命令部分和数据部分,确定所述命令部分是否被列入白名单,如果所述命令部分被列入白名单,则将所述命令部分编码为非ip格式,以及传输编码的命令部分和所述数据部分。
附图说明
10.为了获得并更详细地理解本发明的特征、优点和目的以及其它可能变得显而易见的方式,通过参考在附图中示出的本发明的实施例,可以得到以上简要概述的本发明的更具体的描述,附图构成本说明书的一部分。然而,应注意,附图仅说明本发明的示例实施例,且因此不应视为限制本发明的范围,因为本发明可允许其它等效实施例。
11.图1示出了根据本公开的一个或多个示例实施例的可在tms终端和公司计费模块之间传送的示例销售记录。
12.图2示出了根据本公开的一个或多个示例实施例的将销售记录从tms运送到公司计费模块的典型tcp/ip分组。
13.图3在高层上示出了根据本公开的一个或多个示例实施例的用于在经由计算机网络连接的终端之间安全地传输数据的系统的组件。
14.图4示出了根据本公开的一个或多个示例实施例的用于在经由计算机网络连接的终端之间安全地传输数据的系统的架构,该系统包括销售模块和计费模块。
15.图5示出了根据本公开的一个或多个示例实施例的用于在经由计算机网络连接的终端之间安全地传输数据的方法的逻辑图。
16.图6至图9示出了根据本公开的一个或多个示例实施例的可以在系统中使用的示例数据编码和解码方法。
17.图10示出了根据本公开的一个或多个示例实施例的可在系统中使用的示例命令编码和解码方法。
18.图11是根据本公开的一个或多个示例实施例的系统的示例通信装置的示意框图。
19.图12在高层上示出了根据本公开的一个或多个示例实施例的用于在经由计算机网络连接的终端之间安全地传输数据的系统的组件。
20.图13示出了根据本公开的一个或多个示例实施例的用于在经由计算机网络连接
的终端之间安全地传输数据的系统的架构,该系统包括销售模块和计费模块。
21.图14示出了根据本公开的一个或多个示例实施例的用于在经由计算机网络连接的终端之间安全地传输数据的方法的逻辑图。
具体实施方式
22.现在将在下文中参考示出了实施例的附图更全面地描述本公开的方法和系统。本公开的方法和系统可以是许多不同的形式,并且不应被解释为限于本文阐述的所示实施例;相反,提供这些实施例是为了使本公开透彻和完整,并且将其范围完全传达给本领域技术人员。相同附图标记始终表示相同的元件。
23.本发明的一个实施例是一种方法和设备,用于促进将油库的销售记录信息安全上载到公司的计费系统上。该方法基于中断在油库终端管理系统(tms)和公司销售计算机之间的tcp/ip会话,从而在油库tms和公司商业销售模块之间的tcp/ip会话中创建“间隙”,提取数据字段并最终通过使用ip文本编码/解码方法以“文本”定界格式传输销售数据。该方法通过以下方式执行:将销售数字编码为文本格式的来自油库票务系统的tcp/ip分组的数据字段的一部分,然后在将其解码回tcp/ip分组格式之后将其上载到企业销售模块上,从而消除了恶意软件和病毒在油库和公司销售系统之间的潜在黑客攻击和传播。
24.由于tms商业销售交易由固定报告和记录结构组成,所述记录结构包括基本字段信息,例如客户名称、客户地址、交易日期、燃料类型、燃料价格、燃料量等,因此所传输数据的预期大小非常有限。另外,由于它们的固定(静态)结构,数据记录格式不需要被复制,因为它们从不改变。需要被复制的唯一“动态”元素是这些记录内的“数据”,对于该“数据”,可以容易地以标准字符集表示该“数据”。本系统仅在接收到来自公司侧的合法请求之后,才将作为ip分组的数据字段的一部分发送的tms销售数字转换为公司侧的销售模块。结果,在两个网络之间的整个数据传输中,存在“零”tcp/ip信号交换。
25.因此,通过发送针对tms销售服务器的销售数据的请求、拦截由公司计费模块发送的服务请求、将发送的ip分组的有效载荷剥离成“命令”和“数据”部分,其中“命令”部分被映射到仅七(7)个潜在命令值,并且仅将接受的应用请求编码成3位数字格式并经由“出界/越界(out of bound)”非ip电路系统在两个成对编码器/解码器设备之间传输,使得本发明公开中提出的解决方案减轻或消除了恶意软件或病毒的潜在黑客攻击或传播或网络安全攻击的风险。命令电路系统在硬件上与数据编码/解码电路系统隔离,以确保设备的最佳安全性。
26.现在转到附图,图1示出了可以在tms终端和公司计费模块之间传输的示例销售记录10。销售记录可以包括诸如生成销售商的油库12、报告编号14和记录编号16的信息,销售记录10还可以包括销售商的名称18、销售商的地址20、销售记录10承保期限22、生成销售记录的日期24、输送燃料的日期、准备者的名称26、授权的签名28、购买者的名称30和购买者的实际地址32。销售记录10还可以包括销售或交易的细节,诸如燃料类型、燃料类型的价格、燃料量和总销售量。燃料的类型可以包括汽油、柴油、煤油、乙醇、喷气燃料、液化石油气或任何其它燃料类型。这些tms销售和购买记录和发票通常经由传输控制协议/因特网协议(tcp/ip)网络连接被传输到公司商业模块,包括诸如上述的那些信息。记录格式是“静态的”,因此它可以不涉及复制过程。“数据”是唯一需要复制到公司网络的动态元素,其完全
由可以容易地在典型键盘中表示的“字符”格式组成。
27.图2示出了典型的tcp/ip分组50,其将销售记录10从tms运送到公司计费模块。典型的ip分组50可包括报头部分52和数据部分56。在一个示例实施例中,ip分组50封装从诸如传输层(第4层)的上层开放系统互连(osi)层接收的数据单元或有效载荷56,并将其添加到它们自己的报头信息52。本质上,在这种情况下,有效载荷56将是代表tms销售应用携带的数据,包括应用特定的请求和诸如客户名称、客户地址、燃料类型、燃料价格、燃料量等的关联数据。另一方面,ip报头52包含所有必要信息以确保分组递送,包括用于数据完整性的源地址、目的地地址和校验和。每个ip分组50可以包括32位的信息54,其还可以包括版本、因特网报头长度(ihl)、服务类型、总长度、标识、标志、分段偏移、生存时间、协议、填充和其他选项。
28.在一个示例实施例中,可以启用特殊的应用层“插件”,使得可以根据需要提取和重新构造来自ip分组有效载荷56的数据。所提取的数据可以被馈送到“编码”引擎,并且重构的数据可以分别被馈送到“解码”引擎。另外,还需要隔离应用特定请求(命令)并在设备内的基于硬件的隔离信道上对它们进行编码,以确保最佳安全性。
29.图3在高层上示出了根据一个或多个示例实施例的用于在经由计算机网络连接的终端之间安全地传输选择性数据集的系统100的组件。系统100包括连接到网络上的第一计算机(例如销售模块)的第一通信装置120。第一通信装置120可以包括第一拆分单元106、第一文本编码和解码单元112、第一命令编码和解码单元110、第一构造器单元108、以及用于通过网络发送和接收ip分组的第一收发器(未示出)。系统100还可以包括连接到网络上的第二计算机(例如计费模块)的第二通信装置140。第二通信装置140可以包括第二拆分单元126、第二文本编码和解码单元124、第二命令编码和解码单元122、第二构造器单元128、以及用于通过网络发送和接收ip分组的第二收发器(未示出)。第一通信装置120可以被配置成经由在第一计算机上运行的第一应用编程接口(api)102接收因特网协议(ip)分组104,使用第一拆分单元106将ip分组104划分成命令部分和数据部分,使用第一数据编码单元112将数据部分编码成文本定界非ip格式,并且使用第一收发器发送编码的数据部分和命令部分。尽管一些实施例涉及“数据编码”和“数据解码”,但是应当注意,“数据”可以包括任何形式的数据,包括但不限于“文本”。
30.第二通信装置140可以被配置成接收编码的数据部分和命令部分,使用第二解码单元124将编码的数据部分解码成ip格式,使用第二构造器单元128将解码的数据部分和命令部分组合以重新生成ip分组,并将重新生成的ip分组134发送到运行在第二计算机上的第二api 132。第二通信装置还可以被配置为经由在第二计算机上运行的第二api 132接收第二ip分组134,使用第二拆分单元126将第二ip分组划分为命令部分和数据部分,使用第二通信装置140中的一个或多个处理器确定命令部分是否被列入白名单,使用第二命令编码单元122将命令部分编码为非ip格式,并且使用第二收发器发送编码的命令部分和数据部分。第一通信装置120随后可以接收编码的命令部分和数据部分,使用第一解码单元110将编码的命令部分解码成ip格式,使用第一构造器单元108组合解码的命令部分和数据部分以重新生成第二ip分组,并将重新生成的第二ip分组104发送到运行在第一计算机上的第一api 102。数据部分可以包括客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。
例如,对命令部分进行编码可以包括使用出界数字命令电路系统114对命令部分进行3位编码。
31.图4更详细地示出了根据一个或多个示例实施例的系统100的架构,系统100包括销售模块160和计费模块170。销售模块160可包括一个或多个计算机,例如tms服务器136、工程站118和人机接口(hmi)站116,它们可经由例如tms网络130连接。销售模块160还可包括可连接到tms网络130的现场仪表。计费模块170可以包括一个或多个计算机,例如hr服务器144、医疗记录服务器146、标准服务器148和销售服务器152,它们可以经由接口142连接到网络150,例如sap或可以管理商业运营和客户关系的任何企业软件。网络130、150可以包括任何计算机网络,包括但不限于lan、wan、dsl网络和无线网络,诸如wi-fi、3g、4g和4g lte。
32.系统100包括连接到网络上的第一计算机(例如销售模块)的第一通信装置120。第一通信装置120可以包括第一拆分单元106、第一文本编码和解码单元112、第一命令编码和解码单元110、第一构造器单元108、以及用于通过网络发送和接收ip分组的第一收发器(未示出)。系统100还可以包括连接到网络上的第二计算机(例如计费模块)的第二通信装置140。第二通信装置140可以包括第二拆分单元126、第二文本编码和解码单元124、第二命令编码和解码单元122、第二构造器单元128、以及用于通过网络发送和接收ip分组的第二收发器(未示出)。第一通信装置120可以被配置为经由在第一计算机上运行的第一应用编程接口(api)102接收互联网协议(ip)分组104,使用第一拆分单元106将ip分组104划分为命令部分和数据部分,使用第一文本编码单元112将数据部分编码为文本定界非ip格式,并且使用第一收发器发送编码的数据部分和命令部分。
33.第二通信装置140可以被配置成接收编码的数据部分和命令部分,使用第二解码单元124将编码的数据部分解码成ip格式,使用第二构造器单元128将解码的数据部分和命令部分组合以重新生成ip分组,并将重新生成的ip分组134发送到运行在第二计算机上的第二api 132。第二通信装置还可以被配置为经由在第二计算机上运行的第二api 132接收第二ip分组134,使用第二拆分单元126将第二ip分组划分为命令部分和数据部分,使用第二通信装置140中的一个或多个处理器确定命令部分是否被列入白名单,使用第二命令编码单元122将命令部分编码为非ip格式,并且使用第二收发器发送编码的命令部分和数据部分。第一通信装置120随后可以接收编码的命令部分和数据部分,使用第一解码单元110将编码的命令部分解码成ip格式,使用第一构造器单元108组合解码的命令部分和数据部分以重新生成第二ip分组,并将重新生成的第二ip分组104发送到运行在第一计算机上的第一api 102。数据部分可以包括客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。
34.图5示出了用于在经由计算机网络连接的终端之间安全地传输选择性数据集的方法500的逻辑图。方法500包括由第一通信装置经由在第一计算机(诸如销售模块536)上运行的第一应用编程接口(api)534接收因特网协议(ip)分组532。方法500进一步包括由第一通信装置中的拆分单元530将ip分组划分成命令部分526和数据部分528。方法500还可包括由第一通信装置中的数据编码单元518将数据部分编码为文本定界非ip格式,以及由第一通信装置中的传输单元(未示出)传输编码的数据部分和命令部分。方法500还可以包括由第二通信装置(诸如计费模块502)接收编码的数据部分和命令部分,并且由第二通信装置
中的数据解码单元516将编码的数据部分540解码为ip格式。方法500还包括由第二通信装置中的构造器单元508组合解码的数据部分540和命令部分510以重新生成ip分组506,并且由运行在第二计算机502上的第二api 504接收重新生成的ip分组。
35.方法500还可以包括由第二通信装置502经由在第二计算机上运行的第二api 504接收第二ip分组506,由第二通信装置中的拆分单元508将第二ip分组506分成命令部分510和数据部分540。所述方法还包含在步骤512处由第二通信装置中的一个或多个处理器确定命令部分510是否列入白名单,且在步骤520处由第二通信装置中的命令编码单元在命令部分列入白名单的情况下将命令部分510编码为非ip格式,且在步骤538处由第二通信装置中的传输单元传输编码的命令部分526和数据部分528。在命令部分没有被列入白名单的情况下,则该方法分别在步骤514和524返回错误消息。方法500还可以包括由第一通信装置接收编码的命令部分526和数据部分528,由第一通信装置中的命令解码单元522将编码的命令部分解码成ip格式,由第一通信装置中的构造器单元530将解码的命令部分和数据部分组合以重新生成第二ip分组532,以及由在第一计算机上运行的第一api 534接收重新生成的第二ip分组。数据部分528、540可以包括客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分510、526可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。例如,命令部分的编码可以包括使用出界数字命令电路系统对命令部分进行3位编码520。
36.另外,应当理解,图5中描述和描绘的操作可以按照本公开的各种实施例中期望的任何合适的顺序来执行或进行。另外,在某些实施例中,可以并行地执行至少一部分操作。此外,在某些实施例中,可以执行比图5中所描述的更少、更多或不同的操作。
37.尽管已经描述了本公开的具体实施例,但是本领域普通技术人员将认识到,许多其他修改和替代实施例在本公开的范围内。例如,关于特定装置或组件描述的任何功能和/或处理能力可以由任何其他装置或组件来执行。此外,虽然已经根据本公开的实施例描述了各种说明性实施方式和架构,但是本领域普通技术人员将理解,对本文描述的说明性实施方式和架构的许多其他修改也在本公开的范围内。
38.以上参考根据示例实施例的系统、方法、设备和/或计算机程序产品的框图和流程图描述了本公开的某些方面。将理解,框图和流程图的一个或多个框以及框图和流程图中的框的组合可分别通过执行计算机可执行程序指令来实现。同样,根据一些实施例,框图和流程图的一些框可能不一定需要以所呈现的顺序执行,或者可能根本不一定需要执行。此外,在某些实施例中,可以存在除了在框图和/或流程图的框中所描绘的那些之外的附加组件和/或操作。
39.因此,框图和流程图的框支持用于执行指定功能的装置的组合、用于执行指定功能的元件或步骤的组合、以及用于执行指定功能的程序指令装置。还将理解,框图和流程图的每个框以及框图和流程图中的框的组合可由执行指定功能、元素或步骤的专用的基于硬件的计算机系统或专用硬件和计算机指令的组合来实现。
40.这里公开的程序模块、应用等可以包括一个或多个软件组件,包括例如软件对象、方法、数据结构等。每个这样的软件组件可以包括计算机可执行指令,其响应于执行而使得执行本文描述的功能的至少一部分(例如,本文描述的说明性方法的一个或多个操作)。
41.软件组件可以用各种编程语言中的任何一种来编码。说明性编程语言可以是诸如
与特定硬件架构和/或操作系统平台相关联的汇编语言等较低级的编程语言。包括汇编语言指令的软件组件在由硬件架构和/或平台执行之前可能需要由汇编器转换为可执行机器代码。
42.另一示例编程语言可以是可跨多个架构移植的较高级编程语言。包括高级编程语言指令的软件组件可能需要在执行之前由解释器或编译器转换成中间表示。
43.编程语言的其它示例包括但不限于宏语言、shell(外壳)或命令语言、作业控制语言、脚本语言、数据库查询或搜索语言、或报告书写语言。在一个或多个示例实施例中,包括编程语言的前述示例之一中的指令的软件组件可以由操作系统或其他软件组件直接执行,而不必首先变换成另一形式。
44.软件组件可以作为文件或其它数据存储构造来存储。类似类型或功能相关的软件组件可以存储在一起,例如存储在特定目录、文件夹或库中。软件组件可以是静态的(例如,预先建立的或固定的)或动态的(例如,在执行时创建或修改)。
45.软件组件可以通过各种机制中的任何一种来调用其他软件组件或被其他软件组件调用。被调用的或调用的软件组件可以包括其他定制开发的应用软件、操作系统功能(例如,装置驱动器)、数据存储(例如,文件管理)例程、其他公共例程和服务等)或第三方软件组件(例如,中间件、加密或其他安全软件、数据库管理软件、文件传输或其他网络通信软件、数学或统计软件、图像处理软件和格式转换软件)。
46.与特定解决方案或系统相关联的软件组件可以驻留在单个平台上并在其上执行,或者可以分布在多个平台上。多个平台可以与多于一个的硬件供应商、底层芯片技术或操作系统相关联。此外,与特定解决方案或系统相关联的软件组件最初可以用一种或多种编程语言编写,但是可以调用由另一种编程语言编写的软件组件。
47.计算机可执行程序指令可以被加载到专用计算机或其他特定机器、处理器或其他可编程数据处理设备上以产生特定机器,使得在计算机、处理器或其他可编程数据处理设备上执行指令导致执行流程图中指定的一个或多个功能或操作。这些计算机程序指令也可以存储在计算机可读存储介质(crsm)中,其在执行时可以引导计算机或其他可编程数据处理设备以特定方式工作,使得存储在计算机可读存储介质中的指令产生包括实现流程图中指定的一个或多个功能或操作的指令装置的制品。计算机程序指令还可以被加载到计算机或其他可编程数据处理设备上,以使得在计算机或其他可编程设备上执行一系列操作元件或步骤,以产生计算机实现的过程。
48.可存在于本文所述的任何装置中的附加类型的crsm可包括但不限于可编程随机存取存储器(pram)、sram、dram、ram、rom、电可擦除可编程只读存储器(eeprom)、闪存或其它存储器技术、光盘只读存储器(cd-rom)、数字多功能盘(dvd)或其它光学存储、磁带盒、磁带、磁盘存储或其它磁存储装置、或可用于存储信息并可被访问的任何其它介质。上述任何的组合也包括在crsm的范围内。或者,计算机可读通信介质(crcm)可以包括计算机可读指令、程序模块或在诸如载波或其它传输的数据信号内传输的其它数据。然而,如在此所使用的,crsm不包括crcm。
49.以下段落描述例如可在图3和图4所示的系统100中使用的示例tms数据编码和解码方法。编码的思想是使用非ip传输机制来传输tms销售数据,从而防止病毒和恶意软件的潜在黑客攻击、穿透和传播。编码数据可以仅包括销售记录内的数据,如由数据命令剥离器
插件如此提取的数据。例如,如图6所示,一种示例编码方法是双频音调编码。双频编码字符集可以以9
×
10的字符组合矩阵来布置,其中每行和每列分别表示双频音调编码信号的低频分量和高频分量。编码引擎可以发送表示预期字符的行和列频率的组合。例如,密钥1可以产生600和1250赫兹(hz)的音调叠加。记录信息的传输可以仅在从公司侧的销售模块计算机接收到指示所需的“记录号”或“报告号”的合法服务请求时开始。编码的另一示例方法是4至20ma编码,例如,如图7所示。4至20ma编码字符集被布置在字符组合的9
×
10矩阵中,其中在每行和每列中4至20ma范围内的交流(ac)电流值代表编码信号的预期分量。编码引擎可以发送表示预期字符的行和列ma值的组合,其中,可能零电流作为合理值。例如,密钥1可产生由给定时间定界符分开的0和20ma电流的两个示例。记录信息的传输可以仅在从公司侧的销售模块计算机接收到指示所需的“记录号”或“报告号”的合法服务请求时开始。
50.例如,如图8所示,编码的另一示例方法是毫伏(mv)编码。mv编码字符集被安排在9
×
10的字符组合的矩阵中,其中每行和每列中的ac伏特值表示编码信号的预期分量。编码引擎可以发送表示预期字符的行和列mv值的组合。例如,密钥1可以产生由给定时间定界符分开的5和20mv电流的两个示例。记录信息的传输可以仅在从公司侧的销售模块计算机接收到指示所需的“记录号”或“报告号”的合法服务请求时开始。编码的另一示例方法是光脉冲重复频率(lprf)编码,例如,如图9所示。lprf是在特定时间单位内重复的光信号(激光或非激光)的脉冲数,通常以脉冲/毫秒测量。特定载波频率的信号以按照周期/秒或赫兹测量的重复序列被导通和截止。相关的度量是脉冲宽度,其是在每个脉冲期间发送器开启的时间量。lprf编码字符集被布置在9
×
10字符组合的矩阵中,其中每行表示(lprf)编码信号的下降频率分量,每列表示(lprf)编码信号的上升频率分量。编码引擎将发送表示预期字符的行和列光脉冲的组合。例如,密钥1可以产生由给定时间定界符分开的5和50赫兹(hz)的脉冲。记录信息的传输可以仅在从公司侧的销售模块计算机接收到指示所需的“记录号”或“报告号”的合法服务请求时开始。"
51.根据一个示例实施例,系统100可由两个部分组成,一个部分连接到tms侧,例如第一通信装置120,而另一个部分使用tcp/ip或任何其他协议连接到公司网络侧,例如第二通信装置140。业务的操作流程是通过发送对以tms销售服务器为目标的销售数据的请求而从公司侧(例如计费模块)发起的。这通过总是从公司侧发起的单向命令流来促进。装置140可以截取由公司计费模块发送的服务请求,因为其可以采用tms服务器的身份。装置140然后可以剥离所发送的ip分组的有效载荷,并且将其分成“命令”和“数据”部分。“命令”部分可以被映射到仅七(7)个潜在命令值。下面是“唯一”接受的应用请求,其被编码为3位数字格式,并且经由“出界”非ip电路系统在两个成对的编码器/解码器设备之间传输。命令电路系统可以在硬件中与数据编码/解码电路系统隔离,以确保设备的最佳安全性。
52.例如,图10示出了可以在上述示例实施例中使用的7命令结构。然而,应当注意,这里描述的结构仅仅是一个示例,并且可以根据需要基于4位编码或更高位编码扩展到覆盖更多的数据库命令。在该示例中,“发送记录x的值”可用于发送tms销售记录中该特定记录号的数据。“重发记录x的值”可用于在tms销售记录中重发此特定记录号的数据,并可用于防止传输错误。“报告x的接收值已确认”可用于确认接收到所请求的数据。“发送报告x的值”可用于发送整个tms销售报告的数据。“重发报告x的值”可用于重发此数字所指示的整个tms销售报告的数据以防止传输错误。“报告x的接收值已确认”可用于确认接收到所请求
的数据。根据一个示例实施例,“待机”可以用于待机以等待进一步的指令,其中“x”表示记录(字段)号,并且“y”表示报告号。这是为了确保命令结构对于直接在“硬件”中实现的预定义操作而言是“列入白名单”的,因此它不能被诸如黑客或恶意软件等任何外部手段更改或修改。在单独的信道中的命令白名单和编码对于通过防止潜在的“溢出”和数据污染来保持数据完整性也是必要的。
53.一旦装置140接收到并编码了该命令,它就可以通过在将其发送到对应装置120之前验证其合法性来双重检查其完整性。一旦装置120接收到编码的命令,它可以在对其进行动作之前首先验证其合法性。如果有效,则装置120可提交应用请求以从tms销售服务器获得数据,在tms销售服务器中,它可从ip分组中被提取并相应地通过前面部分中描述的四种方法中的一种被编码。
54.本发明的另一方面是允许手动tms计费数据输入,其中列入白名单的命令可显示在tms侧的显示屏上,且所请求的数据可使用小键盘和/或语音口述/识别设备以“文本”模式传回。显示屏和键盘/语音识别设备可经由例如usb或串行连接而连接到tms模块中的第一通信装置120。
55.本发明的另一方面是系统100可以如何被构建。系统架构可以以四(4)种不同的模式实现,例如,点对点、点对多点、多点对点和多点对多点。点对点系统架构允许“一个”tms系统对“一个”公司计费模块。这种架构是最简单的,并且通常可以在小规模商业中实现。点对多点系统架构允许“一个”tms系统对“多个”公司商业或自动化模块。当诸如公司计费、能力规划和产品移动的多个应用需要tms数据时,该架构是有用的。多点对点系统架构允许将“多个”tms系统合并到“一个”公司计费模块。这种结构非常普通,并且通常可以在具有大量地理上分散的油库的大规模商业中实施。多点对多点系统架构允许将“多个”tms系统信息传播到“多个”公司商业或自动化模块。当需要来自多个站点的tms数据并且诸如公司计费、能力规划和产品移动的多个应用需要tms数据时,该架构是有用的。这种结构非常普通,并且通常可以在具有大量地理上分散的油库的大规模商业中实施。
56.系统100可以实现多种自我保护机制,其中有基于硬件的白名单。作为这种自我保护措施的一部分,每个硬件组件,即cpu、存储器、网络接口,可以被分配硬件数字id,通过该硬件数字id,必须对组件内或外的任何通信进行签名并对其进行验证。该措施可以保护系统免受硬件部件的任何干预或操纵。
57.软件白名单是可以由本系统实现的自我保护措施的另一方面。软件白名单确保每个软件组件,即操作系统(os)、应用插件、网络驱动程序等,被数字地识别和验证。该措施保护系统免受软件组件的任何干预或操纵。自保护措施的另一方面是通过在盒子上安装保护性“密封件”来防止装置篡改的内置方法。电子地引导和操作该密封件,使得如果被破坏(当打开盒子时),则将标志(电子的)发送到“硬件白名单”子例程。密封逻辑和机构可由内部电池供电,以确保连续操作,即使装置从墙壁电源断电。
58.自我保护措施的另一方面是内置的基于异常的入侵检测系统。该系统被设计成通过监控系统活动并将其分类为正常或异常来检测系统入侵。该系统采用神经网络,该神经网络学习和存储可接受的系统行为的模式,使得系统将在检测到可疑行为时主动切断流量。
59.自保护措施的另一方面是内置的通/断开关,其使用ssh和https控制装置的启用/
禁用远程访问和配置。这是附加措施:一旦装置已经完全配置就为其提供保护。在“关闭”位置,装置将不接受任何基于网络的管理请求。增强系统的可用性和可靠性的另一方面是其双总线架构。双总线架构包括双cpu、双存储器等,实际上具有两个装置,它们作为具有内置的同步电路系统的装置工作。
60.提高系统效率的另一方面是其用于数据缓冲和压缩的能力。该系统还包括自恢复子例程,以便在配置丢失或损坏的情况下,可以容易地从“闪速”存储器上的备份点或从网络存储位置恢复。该系统还可以按照与tms和公司计费工作安排一致的预先配置的安排来操作。这是为了优化通信链路使用,并且还为了增强网络安全性,因为系统将在24小时时段期间大部分关闭。
61.在一些实施例中,通信装置120、140可以是独立的,或者被集成为路由器、交换机的一部分,作为附加接口。系统的遵守不利天气条件的能力的另一方面被列出,如下:(a)应提供防风雨且防破坏的外壳以用于安装在户外或相对恶劣的环境中,(b)提供坚固的安装以用于户外安装以避免潜在的振动,(c)系统安装被设计成支撑系统和封壳组件的最大重量,以及(d)支持不锈钢nema型4x或iec 60529型ip66封壳/外壳以用于在恶劣的腐蚀环境中保护系统。
62.在所有上述示例实施例中,应用编程接口(api)可以被定义为用于构建应用软件的一组子例程定义、协议和工具。一般而言,它是在各种软件组件之间的一组清楚定义的通信方法。api通过提供所有构件块使得开发计算机程序更容易,这些构件块然后可以由程序员放在一起。api可以用于基于web的系统、操作系统、数据库系统、以及计算机硬件或软件库。api规范可以采取许多形式,但是通常包括例程、数据结构、对象类、变量或远程调用的规范。posix、microsoft windows api、c 标准模板库和java api是不同形式api的示例。
63.说明性装置架构
64.图11是根据本公开的一个或多个示例实施例的系统100的示例通信装置200的示意框图,该通信装置为诸如第一通信装置120或第二通信装置140。在说明性配置中,装置200可以包括一个或多个处理器202、一个或多个存储器装置204(在此一般地称为存储器204)、一个或多个输入/输出(“i/o”)接口206、一个或多个网络接口208和数据存储212。装置200还可以包括一个或多个总线210,其可以功能性地耦接装置200的各种组件。这些不同的部件将在下文中更详细地描述。
65.(一个或多个)总线210可以包括系统总线、存储器总线、地址总线或消息总线中的至少一个,并且可以允许在装置200的各种组件之间交换信息(例如,数据(包括计算机可执行代码)、信令等)。(一个或多个)总线210可以具有各种总线结构中的任何一种,包括但不限于存储器总线或存储器控制器、外围总线、加速图形端口等。(一个或多个)总线210可以与任何适当的总线架构相关联,包括但不限于工业标准架构(isa)、微信道架构(mca)、增强型isa(eisa)、视频电子标准协会(vesa)架构、加速图形端口(agp)架构、外围部件互连(pci)架构、pci-express架构、个人计算机存储卡国际协会(pcmcia)架构、通用串行总线(usb)架构、串行外围接口架构等等。
66.装置200的存储器204可以包括易失性存储器(当被供电时维持其状态的存储器),诸如随机存取存储器(ram);和/或非易失性存储器(即使当不被供电时也维持其状态的存储器),诸如只读存储器(rom)、闪存、铁电ram(fram)等等。在某些示例实施例中,易失性存
储器可以实现比非易失性存储器更快的读/写存取。然而,在某些其它示例实施例中,某些类型的非易失性存储器(例如fram)可以实现比某些类型的易失性存储器更快的读/写存取。
67.在各种实施方式中,存储器204可以包括多种不同类型的存储器,诸如各种类型的静态随机存取存储器(sram)、各种类型的动态随机存取存储器(dram)、各种类型的不可改变的rom、和/或rom的可写入变体,诸如电可擦除可编程只读存储器(eeprom)、闪存等等。存储器204可以包括主存储器以及各种形式的高速缓冲存储器,例如(一个或多个)指令高速缓存、(一个或多个)数据高速缓存和(一个或多个)转译后备缓冲器(tlb)等等。此外,诸如数据高速缓存的高速缓存存储器可以是组织为一个或多个高速缓存级(l1、l2等)的层次结构的多级高速缓存。
68.数据存储212可以包括可移动存储和/或不可移动存储,包括但不限于磁存储、光盘存储和/或磁带存储。数据存储212可以包括例如存储卡、usb闪存驱动器、外部硬盘驱动器、光盘等。数据存储212可以提供计算机可执行指令和其他数据的非易失性存储。存储器204和数据存储212,可移动的和/或不可移动的,是如在此使用的术语计算机可读存储介质(crsm)的示例。
69.数据存储212可以存储计算机可执行代码、指令等,其可以被加载到存储器204中并且可由(一个或多个)处理器202执行以使得各种操作被执行。在某些示例实施例中,存储在数据存储212中的计算机可执行代码可以由(一个或多个)处理器202直接从数据存储202执行。数据存储212可另外存储可被复制到存储器204以供(一个或多个)处理器202在计算机可执行指令的执行期间使用的数据。此外,作为由(一个或多个)处理器202执行计算机可执行指令的结果而生成的输出数据可以初始地存储在存储器204中,并且可以最终被复制到数据存储212以用于非易失性存储。
70.更具体地,数据存储212可以存储一个或多个操作系统(o/s)214;一个或多个数据库管理系统(dbms)216;以及一个或多个程序模块、应用等,诸如一个或多个拆分模块218、一个或多个编码/解码模块220、以及一个或多个构造器模块222。图11中所描绘的任何模块可以包括计算机可执行代码、指令等,其可以被加载到存储器204中以供(一个或多个)处理器202中的一个或多个执行。
71.(一个或多个)处理器202可以被配置成访问存储器204并且执行加载在其中的计算机可执行指令。例如,(一个或多个)处理器202可以被配置为执行装置200的各种程序模块的计算机可执行指令,以使得或促进根据本公开的一个或多个实施例执行各种操作。(一个或多个)处理器202可以包括能够接受数据作为输入、根据存储的计算机可执行指令处理输入数据并且生成输出数据的任何合适的处理单元。(一个或多个)处理器202可以包括任何类型的合适的处理单元,包括但不限于中央处理单元、微处理器、精简指令集计算机(risc)微处理器、复杂指令集计算机(cisc)微处理器、微控制器、专用集成电路(asic)、现场可编程门阵列(fpga)、片上系统(soc)、数字信号处理器(dsp)等等。此外,(一个或多个)处理器202可具有任何合适的微架构设计,其包括任何数量的组成组件,诸如,例如,寄存器、复用器、算术逻辑单元、用于控制对高速缓存存储器的读/写操作的高速缓存控制器、分支预测器等。(一个或多个)处理器202的微架构设计可以能够支持各种指令集中的任何指令集。
72.现在参考可由被描绘为存储在数据存储212中的各种程序模块支持的功能,(一个或多个)拆分模块218、编码/解码模块220、和/或(一个或多个)构造器模块222可包括用于提供控制平面功能以作出关于网络装置之间的网络流量将如何被路由的确定的计算机可执行代码、指令等。路由决定可以基于例如各种因素中的任何一个,诸如网络带宽、网络拥塞等。另外或替代地,(一个或多个)拆分模块218可包括用于识别适当网络装置(例如,接入网络终端装置、内容服务器等)以用于接收和处理/响应于从终端接收的请求且将ip分组拆分为数据和命令部分的计算机可执行代码、指令等。(一个或多个)编码/解码模块220可以附加地或可替换地包括用于对ip分组的数据部分和/或命令部分进行编码和/或解码的计算机可执行代码、指令等。(一个或多个)构造器模块222可以附加地或可替换地包括用于识别用于从终端接收请求的适当网络装置,并且将命令部分和数据部分组合到ip分组中的计算机可执行代码、指令等,。
73.现在参考图11中描述的存储在数据存储212中的其它说明性组件,o/s 214可以从数据存储212加载到存储器204中,并且可以提供在装置200上执行的其它应用软件和装置200的硬件资源之间的接口。更具体地,o/s 214可以包括用于管理装置200的硬件资源和用于向其他应用程序提供公共服务(例如,管理各种应用程序之间的存储器分配)的一组计算机可执行指令。o/s 214可以包括现在已知的或者将来可能开发的任何操作系统,包括但不限于任何专有的或者非专有的操作系统(例如,基于linux的操作系统)。
74.dbms 216也可以从数据存储212加载到存储器204中,并且可以支持用于访问、检索、存储和/或操纵存储在一个或多个外部数据存储(未示出)中的数据和/或存储在数据存储212中的数据的功能。dbms 216可以使用多种数据库模型(例如,关系模型、对象模型等)中的任何一种,并且可以支持多种查询语言中的任何一种。(一个或多个)数据存储可以表示一个或多个数据模式中的数据,并且可以包括任何合适的数据存储库(包括但不限于数据库(例如,关系的、面向对象的等)、文件系统、平面文件)、其中数据被存储在计算机网络的一个以上节点上的分布式数据存储、对等网络数据存储等。
75.现在参考装置200的其它说明性组件,可以提供一个或多个输入/输出(i/o)接口206,其可以促进装置200从一个或多个i/o装置接收输入信息以及从装置200向一个或多个i/o装置输出信息。i/o装置可以包括例如一个或多个用户接口装置,其促进用户和装置200之间的交互,包括但不限于显示器、小键盘、定点装置、控制面板、触摸屏显示器、远程控制装置、麦克风、扬声器等。i/o装置还可以包括例如任何数量的外围装置,诸如数据存储装置、打印装置等。装置200还可以包括一个或多个网络接口208,装置200可以经由该网络接口与各种其他系统、平台、网络、装置等中的任何一种进行通信。(一个或多个)输入/输出接口206和/或(一个或多个)网络接口208可以包括或以其他方式促进经由各种类型的串行或并行端口中的任何端口的通信,所述端口包括但不限于以太网端口、usb端口、高清晰度多媒体接口(hdmi)端口、视频图形阵列(vga)端口、同轴rf连接器(母连接器)等等。
76.(一个或多个)网络接口208可以经由任何适当类型的网络来促进装置200与一个或多个其他装置之间的通信。(一个或多个)这样的网络可以包括但不限于任何一个或多个不同类型的通信网络,例如电缆网络、公共网络(例如因特网)、专用网络(例如帧中继网络)、无线网络、蜂窝网络、电话网络(例如公共交换电话网络)或任何其它适当的专用或公共的包交换或电路交换网络。此外,(一个或多个)这样的网络可以具有与之相关联的任何
合适的通信范围,并且可以包括例如全球网络(例如,因特网)、城域网(man)、广域网(wan)、局域网(lan)或个人区域网(pan)。此外,(一个或多个)这样的网络可以包括通信链路和相关联的联网装置(例如,链路层交换机、路由器等),用于通过任何合适类型的介质来传输网络流量,所述介质包括但不限于同轴电缆、双绞线(例如,双绞线铜线)、光纤、混合光纤同轴(hfc)介质、微波介质、射频通信介质、卫星通信介质或其任何组合。
77.应当理解,图11中描绘为存储在数据存储212中的程序模块、应用、计算机可执行指令、代码等仅是说明性的而非穷举性的,并且被描述为由任何特定模块支持的处理可以替换地分布在多个模块上或由不同模块执行。此外,可以提供各种(一个或多个)程序模块、(一个或多个)脚本、(一个或多个)插件、(一个或多个)应用编程接口(api)或在装置200上本地托管的和/或在经由一个或多个网络可访问的其他(一个或多个)计算装置上托管的任何其他合适的计算机可执行代码,以支持由图11中描绘的程序模块、应用或计算机可执行代码提供的功能和/或附加或替代功能。此外,功能可被不同地模块化,使得被描述为由图11所示的程序模块集合共同支持的处理可由更少或更多数量的模块执行,或者被描述为由任何特定模块支持的功能可至少部分地由另一模块支持。此外,支持此处所描述的功能的程序模块可形成可根据任何合适的计算模型,诸如例如客户端-服务器模型、对等模型等跨任何数量的系统或装置执行的一个或多个应用的一部分。此外,描述为由图11中描述的任何程序模块支持的任何功能可以至少部分地在任何数量的装置上的硬件和/或固件中实现。
78.一个示例实施例是非暂时性计算机可读介质204,其包括存储在其上的指令,当由操作地耦接到计算机可读介质204的一个或多个处理器202执行时,所述指令使得第一通信装置120的一个或多个处理器202执行操作,所述操作包括经由在第一计算机上运行的第一应用编程接口(api)接收互联网协议(ip)分组,将ip分组划分成命令部分和数据部分,将数据部分编码成文本定界非ip格式,以及发送编码的数据部分和命令部分。所述指令可进一步致使所述一个或多个处理器执行包含以下各项的操作:接收编码的命令部分及数据部分;将所述编码的命令部分解码成ip格式;组合所述解码的命令部分与所述数据部分,以重新生成第二ip分组;并发射所述重新生成的第二ip分组。
79.另一示例实施例是包括存储在其上的指令的非暂时性计算机可读介质204,当由操作地耦接到计算机可读介质204的一个或多个处理器202执行时,所述指令使第二通信装置140的一个或多个处理器202执行包括以下的操作:接收编码的数据部分和命令部分,将编码的数据部分解码为ip格式,将解码的数据部分和命令部分组合以重新生成ip分组,以及发送重新生成的ip分组。所述指令可以进一步使所述一个或多个处理器执行操作,包括:经由在第二计算机上运行的第二api接收第二ip分组,将所述第二ip分组划分为命令部分和数据部分,确定所述命令部分是否被列入白名单,如果所述命令部分被列入白名单,则将所述命令部分编码为非ip格式,以及发送编码的命令部分和数据部分。
80.还应当理解,在不脱离本公开的范围的情况下,装置200可以包括除了所描述或描绘的那些之外的替代和/或附加硬件、软件或固件组件。更特别地,应当理解,被描述为形成装置200的一部分的软件、固件或硬件组件仅仅是说明性的,并且在各种实施例中可以不存在一些组件或者可以提供附加组件。尽管各种说明性程序模块已被描绘和描述为存储在数据存储中的软件模块,但应当理解,被描述为由程序模块支持的功能可由硬件、软件和/或
固件的任何组合来启用。还应当理解,在各种实施例中,上述模块中的每一个可以表示所支持的功能的逻辑划分。该逻辑分区是为了便于解释功能而描绘的,并且可以不代表用于实现该功能的软件、硬件和/或固件的结构。因此,应当理解,在各种实施例中,被描述为由特定模块提供的功能可以至少部分地由一个或多个其它模块提供。此外,在某些实施例中可能不存在一个或多个所描绘的模块,而在其他实施例中,可能存在未描绘的附加模块,并且这些附加模块可以支持所描述的功能和/或附加功能的至少一部分。此外,虽然某些模块可以被描绘和描述为另一模块的子模块,但是在某些实施例中,这样的模块可以被提供为独立的模块或其它模块的子模块。
81.图12在高层上图示了根据一个或多个示例实施例的用于在经由计算机网络连接的终端之间安全地传输选择性数据集的系统1200的部件。系统1200包括连接到网络上的第一计算机(例如销售模块)的第一通信装置1120。第一通信装置1120可以包括第一拆分单元1106、第一文本编码和解码单元1112、第一命令编码和解码单元1110、第一构造器单元1108、以及用于通过网络发送和接收ip分组的第一收发器(未示出)。系统1200还可以包括连接到网络上的第二计算机(例如计费模块)的第二通信装置1140。第二通信装置1140可包括第二拆分单元1126、第二文本编码和解码单元1124、第二命令编码和解码单元1122、第二构造器单元1128、以及用于通过网络发送和接收ip分组的第二收发器(未示出)。第一通信装置1120可以被配置为经由在第一计算机上运行的第一同步多应用编程接口(api)1102接收互联网协议(ip)分组1104,使用第一拆分单元1106将ip分组1104划分为命令部分和数据部分,使用第一数据编码单元1112将数据部分编码为文本定界非ip格式,并且使用第一收发器发送编码的数据部分和命令部分。尽管一些实施例涉及“数据编码”和“数据解码”,但是应当注意,“数据”可以包括任何形式的数据,包括但不限于“文本”。
82.第二通信装置1140可被配置成接收编码的数据部分和命令部分,使用第二解码单元1124将编码的数据部分解码成ip格式,使用第二构造器单元1128组合解码的数据部分和命令部分以重新生成ip分组,并将重新生成的ip分组1134发送到在第二计算机上运行的第二同步多应用api 1132。第二通信装置还可以被配置为经由在第二计算机上运行的第二同步多应用api 1132接收第二ip分组1134,使用第二拆分单元1126将第二ip分组划分为命令部分和数据部分,使用第二通信装置1140中的一个或多个处理器确定命令部分是否被列入白名单,使用第二命令编码单元1122将命令部分编码为非ip格式,以及使用第二收发器发送编码的命令部分和数据部分。然后,第一通信装置1120可以接收编码的命令部分和数据部分,使用第一解码单元1110将编码的命令部分解码成ip格式,使用第一构造器单元1108将解码的命令部分和数据部分组合以重新生成第二ip分组,并将重新生成的第二ip分组1104发送到在第一计算机上运行的第一同步多应用api 1102。数据部分可以包括客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。例如,对命令部分进行编码可以包括使用出界数字命令电路系统1114对命令部分进行3位编码。
83.如图12所示,具有多应用支持的同步通信涉及使用时隙1154、1164共享通信介质(即,多路复用),以便具有应用id 1156、1166的每个应用可以基于时隙分配在特定时间使用介质。这些时隙1154、1164由控制第一计算机1120和第二计算机1140的公共时钟1158控制,从而指示哪个应用可以在特定时间点使用介质。
84.这种改进的架构是关于实现对附加应用或进程的支持,作为示例,该附加应用或进程可以具有发送能力;大量标准参数,例如放弃请求和相关的成本数字、潜在的安全或安全暗示、用户的修订反馈和对驻留在“中央”工程设施上的系统的行业参考,该“中央”工程设施可以执行智能相关、预测和修订建议,以便及时和持续地增强标准优化过程。
85.大型公司和政府实体维持产生数十个技术学科领域的数百个标准,例如建筑规范、通信、电气、机械、自动化和网络安全。标准要求冲突或未对准的可能性是相当大的。这是因为难以实现标准委员会之间的紧密协调和通信。保持标准正确对准需要巨大的努力并且往往是耗时的。
86.标准优化系统可以包括三个组件:
87.(a)输入引擎:输入引擎容纳用于不同功能和过程的完整因果分析。此外,将对总体模型有贡献的不同变量的经验数据馈送到“输入引擎”中。输入引擎包括多维数据库,该数据库基于诸如以下信息来保存多个记录:工业标准控制的完整编译(通过控制进行控制(control by control))、内部标准控制的完整编译(通过控制进行控制)、综合的一对一映射(在工业参考标准和内部标准之间)、每个标准的放弃请求的数量、每个标准中每个控制的放弃请求的数量、与放弃相关联的潜在成本节省或暗示、与放弃请求相关联的潜在安全性或安全性暗示、自上次优化以来的时间、标准修订请求、用户对先前修订过程的反馈、工业标准覆盖检查的结果(控制:“省略”、“放松”或“严格”?)、不太理想的设计要求的可接受的增量公差(即,85%,90%,95%?)
88.馈送到“输入引擎”的细节水平对于自动优化模型的准确性和有益方面是重要的。数据越多,则更好地考虑该信息的粒度细节。其示例是将每个标准分割成单独的控制以使得它们被顺序地映射到参考的行业标准中的其对应物中的初始要求,从而创建可稍后由“分析引擎”使用的电子“覆盖”。在记住相同的细节水平的情况下,必须对其它信息记录执行相同的操作。这可能在开始时花费一些时间,但是一旦完成,结果是具有可获利的回报的信息的“珍藏”价值。
89.(b)分析引擎:分析引擎保持对由“输入引擎”创建的整个标准数据仓库的访问,对于该“输入引擎”可以执行彻底的检查、关联和交叉检查以实现简单的逻辑:识别需要立即“优化”的“标准”,其影响以下“控制”,具有预见的“成本节约=$$”和“无安全/保障”含义。“分析引擎”的目的是代替手动决策,以进行“何时”优化特定标准的过程。标准优化过程可以不再依赖于任意时间周期,也不依赖于sme自己的主动行为。“分析引擎”调用以启动标准优化过程,该标准优化过程可以用突出全局成本节约数字的详细报告来具体化,不仅用于一个特定标准,而且生成提供投资数字的预先回报的标准库的整个树。
90.然而,因为数据库保存每种标准的每种控制的记录,“分析引擎”可以容易地发现潜在的冲突或未对准的需求,即使它们驻留在两个或更多个不同的标准上。仅仅确定重叠或未对准控制的能力被认为是对操作优良(oe)的重大成就。这里,作为示例,示出了样本未对准记录。
91.92.在其它情况下,在不同标准中重复某些设计要求。在这种情况下,控制是匹配的,然而,它们是多于一个标准所要求的。“分析引擎”能够发现和识别重叠,并将它们作为报告机制的一部分呈现。这里,作为示例,示出了样本重叠记录。
[0093][0094]
各种标准中的控制之间的信息的相关性可经由基于关键字识别的多维智能逻辑、在功能准则下的索引以及将促进智能逻辑的任何其他元素来实现。例如,建筑规范标准中4000psi混凝土的最小抗压强度要求和55度的ip摄像机最小室外温度支持可以在“鲁棒性”下被索引。
[0095]
分析引擎还配备有执行主动报告和警告逻辑的补充组件,该逻辑可以连续地监控标准优化索引,并且如果达到某些阈值则生成警告。该警告由终端用户可以主动定义的动态或固定阈值触发。警报可以经由电子邮件传送或显示在电子仪表板上。
[0096]
示例
[0097]
内部安全标准要求8字符长的密码用于控制系统安装。所引用的国际标准仅需要7字符长密码测度。已经安装的系统不能支持8字符长的标准要求,因此发起放弃请求。分析可以如下给出:与国际标准相比,8字符密码的要求是“严格的”。放弃处理可以提供巨大的成本避免,因为满足这个要求的唯一方式是升级或替换系统。对安全性和保密性的影响是“最小的”。这里,作为示例,示出了样本标准覆盖记录。
[0098][0099]
作为示例,这里示出了样本放弃请求记录。
[0100][0101][0102]
(c)咨询引擎:咨询引擎建议详细说明对标准的所需改变或修改的实际计划。虽然“分析引擎”提供了用于“需要”的数据以修订或优化标准,但是“咨询引擎”进一步通过临时提供“行动计划”来进行。例如,在人工标准优化过程中,负责的sme可以在其管辖范围内要求标准的“价值工程(ve)”会话练习。会议请求被发送到参与主题标准的原始开发工作以重新访问[价值对成本]分析的所有其他sme。因此,商业决策可能必须遵循是应该维持还是消除主题标准。ve方法是确保标准质量和保持其价值的必要部分,然而,该方法在人力、时间和后勤方面非常昂贵。作为“咨询引擎”的功能的一部分,提出了一种方法,用于向价值工程过程提供自动化,使得可以更频繁地执行该过程,从而减去人力、时间和后勤方面的成本。
[0103]
价值工程是一种通过使用功能检查来提高商品或产品和服务的“价值”的系统方法。如所定义的,价值是功能与成本的比。因此,通过改善功能或降低成本,可以增加价值。作为追求价值改进的结果,基本功能被保留而不被减少是价值工程的主要原则。
[0104]
价值工程背后的推理如下:如果销售商期望产品在特定的时间长度内实际上或在风格上变得过时,他们可以将其设计为仅持续该特定的使用期限。产品可以用更高等级的部件来构建,但是它们不能用价值工程来构建,因为这将对制造商强加不必要的成本,并且在有限的程度上还对购买者强加增加的成本。价值工程可以降低这些成本。公司通常可以使用满足产品寿命预测的最便宜的部件。
[0105]
图13更详细地示出了根据一个或多个示例实施例的系统1300的架构,其包括销售模块1160和计费模块1170。销售模块1160可包括一个或多个计算机,例如tms服务器1136、工程站1118和人机接口(hmi)站1116,它们可经由例如tms网络1130连接。销售模块1160还可包括可连接到tms网络1130的现场仪器。计费模块1170可以包括一个或多个计算机,例如hr服务器1144、医疗记录服务器1146、标准服务器1148和销售服务器1152,其可以经由接口1142连接到网络1150,例如sap或可以管理商业运作和客户关系的任何企业软件。网络1130、1150可以包括任何计算机网络,包括但不限于lan、wan、dsl网络和无线网络,诸如wi-fi、3g、4g和4g lte。
[0106]
系统1300包括连接到网络上的第一计算机(例如销售模块)的第一通信装置1120。第一通信装置1120可以包括第一拆分单元1106、第一文本编码和解码单元1112、第一命令
编码和解码单元1110、第一构造器单元1108、以及用于通过网络发送和接收ip分组的第一收发器(未示出)。系统1300还可以包括连接到网络上的第二计算机(例如,计费模块)的第二通信装置1140。第二通信装置1140可包括第二拆分单元1126、第二文本编码和解码单元1124、第二命令编码和解码单元1122、第二构造器单元1128、以及用于通过网络发送和接收ip分组的第二收发器(未示出)。第一通信装置1120可以被配置为经由在第一计算机上运行的第一同步多应用编程接口(api)1102接收互联网协议(ip)分组1104,使用第一拆分单元1106将ip分组1104划分为命令部分和数据部分,使用第一文本编码单元1112将数据部分编码为文本定界非ip格式,并且使用第一收发器发送编码的数据部分和命令部分。
[0107]
第二通信装置1140可被配置成接收编码的数据部分和命令部分,使用第二解码单元1124将编码的数据部分解码成ip格式,使用第二构造器单元1128组合解码的数据部分和命令部分以重新生成ip分组,并将重新生成的ip分组1134发送到在第二计算机上运行的第二同步多应用api 1132。第二通信装置还可以被配置为经由在第二计算机上运行的第二同步多应用api 1132接收第二ip分组1134,使用第二拆分单元1126将第二ip分组划分为命令部分和数据部分,使用第二通信装置1140中的一个或多个处理器确定命令部分是否被列入白名单,使用第二命令编码单元1122将命令部分编码为非ip格式,以及使用第二收发器发送编码的命令部分和数据部分。然后,第一通信装置1120可以接收编码的命令部分和数据部分,使用第一解码单元1110将编码的命令部分解码成ip格式,使用第一构造器单元1108将解码的命令部分和数据部分组合以重新生成第二ip分组,并将重新生成的第二ip分组1104发送到在第一计算机上运行的第一同步多应用api 1102。数据部分可以包括客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。
[0108]
图14示出了用于在经由计算机网络连接的终端之间安全地传输选择性数据集的方法500的逻辑图。方法500包括由第一通信装置经由在第一计算机上运行的第一同步多应用编程接口(api)552接收网际协议(ip)分组532。第一api 552可以运行多个应用,例如公司计费模块548和标准优化模块550。方法500进一步包括由第一通信装置中的拆分单元530将ip分组划分成命令部分526和数据部分528。方法500还可包括由第一通信装置中的数据编码单元518将数据部分编码为文本定界非ip格式,以及由第一通信装置中的传输单元(未示出)传输编码的数据部分和命令部分。方法500还可以包括由运行第二同步多应用api 542的第二通信装置接收编码的数据部分和命令部分,该第二通信装置可以运行多个应用,例如公司计费模块544和标准优化模块546。该方法还可以包括由第二通信装置中的数据解码单元516将编码的数据部分540解码为ip格式。方法500还包括由第二通信装置中的构造器单元508组合解码的数据部分540和命令部分510以重新生成ip分组506,并且由运行在第二计算机上的第二同步多应用api 542接收重新生成的ip分组。
[0109]
方法500还可以包括由第二通信装置544、546经由在第二计算机上运行的第二同步多应用api 542接收第二ip分组506,由第二通信装置中的拆分单元508将第二ip分组506分为命令部分510和数据部分540。所述方法还包含在步骤512处由第二通信装置中的一个或多个处理器确定命令部分510是否列入白名单,且在步骤520处由第二通信装置中的命令编码单元在命令部分列入白名单的情况下将命令部分510编码为非ip格式,且在步骤538处由第二通信装置中的传输单元传输编码的命令部分526和数据部分528。在命令部分没有被
列入白名单的情况下,则该方法分别在步骤514和524返回错误消息。方法500还可以包括由第一通信装置接收编码的命令部分526和数据部分528,由第一通信装置中的命令解码单元522将编码的命令部分解码成ip格式,由第一通信装置中的构造器单元530将解码的命令部分和数据部分组合以重新生成第二ip分组532,以及由在第一计算机上运行的第一同步多应用api 552接收重新生成的第二ip分组。数据部分528、540可以包括客户名称、客户地址、燃料类型、燃料价格和燃料量中的至少一个。命令部分510、526可以包括用于数据完整性的源地址、目的地地址和校验和中的至少一个。例如,命令部分的编码可以包括使用出界数字命令电路系统对命令部分进行3位编码520。
[0110]
另外,应当理解,图14中描述和描绘的操作可以按照本公开的各种实施例中期望的任何合适的顺序来执行或进行。另外,在某些实施例中,可以并行地执行至少一部分操作。此外,在某些实施例中,可以执行比图14中所描述的更少、更多或不同的操作。
[0111]
另一示例实施例是用于将油库销售票务信息从tms传输到公司计费和销售模块的安全方法。该方法基于中断在油库tms系统和公司销售计算机之间的tcp/ip会话,提取数据字段,并最终通过使用ip文本编码/解码设备以“文本”定界格式发送销售数据。尽管这里描述的示例实施例涉及石油化学、石油、天然气和化学处理工业领域,但是本发明不限于此,并且可以应用于经由计算机网络连接的任何两个终端或计算机。
[0112]
该方法通过以下方式执行:将销售数字编码为文本格式的来自油库票务系统的tcp/ip分组的数据字段的一部分,然后在将其解码回tcp/ip分组格式之后将其上载到企业销售模块上,从而消除了恶意软件和病毒在油库和公司销售系统之间的潜在黑客攻击和传播。该方法还可以用于任何其它应用,其中所需的输入数据将填充数据库记录结构中的字段,例如保管权转移、资产管理、产品库存等等。
[0113]
上述示例实施例的一些优点包括由于增加的数据隐私、增加的数据认证、增加的数据完整性和增加的数据有效性,因此增加了数据安全性。例如,增加的数据隐私是由于传输的信息仅能被其合法接收者查看的指示。尽管第三方可能能够访问所发送的消息的副本,但是他们将不能够理解它。提供增加的数据认证是因为传输技术考虑了适用的措施来确保所传输数据的发送方和接收方的“身份”。提供了增加的数据完整性,因为传输技术考虑了适用的措施,以确保所传输的数据的整体“完整性”,并且确保其无变化地到达其目的地。提供了增加的数据有效性,因为传输技术考虑了适用的措施来确保所传输数据的整体“有效性”和健全性,并且因此可以对其进行处理。在一些实施例中,除了数据格式转换方法之外,还使用基于硬件和软件的白名单措施来确保数据在应用的预期参数内到达。
[0114]
其次,上述示例实施例提供了增加的通信安全性,例如,传输介质的增加的安全性。上述示例实施例提供了无连接传输。例如两个网络端点之间的通信方法,其中数据可以从一个端点发送到另一个,而无需建立会话。“无连接”装置通常中断网络会话,并在终端装置之间使用非常规数据传送方法,例如在数据二极管技术中的情况。上述示例实施例还提供了选择性的数据传输。例如,传输介质被预编程以使用数据分组剥离和数据提取技术来传输应用所需的选择性数据字段。“选择性数据传输”方法省略了可能潜在地用于传输恶意软件和病毒的其他字段。
[0115]
根据本公开的实施方式可以在计算机实现的方法、硬件计算系统和有形计算机可读介质中实现。例如,一个或多个计算机的系统可以被配置为通过将软件、固件、硬件或它
们的组合安装在系统上来执行特定动作,所述软件、固件、硬件或它们的组合在操作中使得或促使系统执行动作。一个或多个计算机程序可以被设备为通过包括指令来执行特定动作,所述指令在由数据处理设备执行时使得所述设备执行所述动作。
[0116]
虽然一般被描述为在有形介质上体现的处理和变换相应数据的计算机实现的软件,但是这些方面中的一些或全部可以是计算机实现的方法或者进一步被包括在用于执行该描述的功能的相应系统或其他装置中。在附图和以下描述中阐述了本公开的这些和其他方面和实施方式的细节。本公开的其它特征和优点将从描述和附图以及从权利要求中显而易见。
[0117]
包括发明内容、附图简要说明和具体实施方式的说明书以及所附权利要求涉及本公开的特定特征(包括过程或方法步骤)。本领域技术人员理解,本发明包括说明书中描述的特定特征的所有可能的组合和使用。本领域技术人员理解,本公开不限于说明书中给出的实施例的描述或不受其限制。
[0118]
本领域技术人员还理解,用于描述特定实施例的术语不限制本公开的范围或广度。在解释说明书和所附权利要求时,所有术语应当以与每个术语的上下文一致的最宽的可能方式来解释。除非另有定义,否则说明书和所附权利要求书中使用的所有技术和科学术语具有与本发明所属领域的普通技术人员通常理解的相同的含义。
[0119]
如在说明书和所附权利要求中所使用的,单数形式“一个(a、an)”和“该(the)”包括复数引用,除非上下文另有明确指示。动词“包括”及其结合形式应当被解释为以非排他的方式引用元件、部件或步骤。所引用的元件、部件或步骤可以与未明确引用的其它元件、部件或步骤一起存在、使用或组合。
[0120]
除非另外具体说明或者在所使用的上下文内以其他方式理解,否则诸如“能够(can)”、“可能(could、might)”或“可以(may)”等条件语言一般旨在传达某些实施方式可包括而其他实施方式不包括某些特征、元素和/或操作。因此,这样的条件语言一般不旨在暗示特征、元素和/或操作以任何方式对于一个或多个实施方式是需要的,或者一个或多个实施方式必须包括用于在有或没有用户输入或提示的情况下决定这些特征、元素和/或操作是否被包括在任何特定实施方式中或者是否要在任何特定实施方式中执行的逻辑。
[0121]
因此,本文所述的系统和方法非常适于实现所述目的并获得所提及的结果和优点以及其中固有的其它结果和优点。虽然为了公开的目的已经给出了系统和方法的示例实施例,但是在用于实现期望结果的过程的细节中存在许多改变。这些和其它类似的修改对于本领域技术人员来说是显而易见的,并且旨在包括在本文公开的系统和方法的精神以及所附权利要求的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献