文件发送方法、接收方法、系统及设备的制作方法

文档序号:7986190阅读:157来源:国知局
文件发送方法、接收方法、系统及设备的制作方法
【专利摘要】本发明公开了一种文件发送方法、接收方法、系统及设备,属于通信【技术领域】。所述方法包括:将二进制的文件传输协议数据转码成字符串数据;将所述字符串数据利用Telnet协议发送给对端设备,以便所述对端设备对所述字符串数据进行转码后获得所述二进制的文件传输协议数据。本发明通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制的文件传输协议数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和相应端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。
【专利说明】文件发送方法、接收方法、系统及设备
【技术领域】
[0001]本发明涉及通信【技术领域】,特别涉及一种文件发送方法、接收方法、系统及设备。【背景技术】
[0002]Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。在Telnet协议下,客户端可以通过Internet连接到目标服务器或者局端设备,进行远程运维操作。
[0003]Telnet协议只能进行明文字符串或者键值的传输,协议本身并不支持二进制数据内容的传输,所以用户在使用Telnet协议远程登录服务器后,并不能直接用建立的Telnet连接来进行上传或者下载二进制数据。但是,在实际运维过程中,用户可能需要从远程服务器导出配置文件、数据库或者压缩格式的日志包之类的二进制数据,也可能需要向远程服务器上传补丁文件来调试修复。此时,现有的文件发送方法,主要是:用户向远程服务器的管理者进行申请,要求该管理者开通用于文件传输的专线和端口,比如,用户向管理者打电话,要求管理者开通一条专线和对应的端口 ;在管理者开通一条专线和对应的端口之后,用户利用本地的 TFTP (Trivial File Transfer Protocol,简单文件传输协议)、FTP (FileTransfer Protocol,文件传输协议)或者 SFTP (Secure File Transfer Protocol,安全文件传输协议)等文件传输协议与远程服务器进行二进制数据的上传或者下载;在用户调试完毕后,通知该管理者将这条专线和对应端口断开。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0005]第一,信息安全风险高,一方面,传输文件的专线和对应的端口存在报文被截取的风险;另一方面,远程服务器还需要开启文件传输端口,也存在安全隐患;
[0006]第二,维护操作成本高,用户与管理员之间的沟通成本高,周期较长;而且如果维护过程较长,还会要求管理员反复开启和断开专线,导致作为客户的管理员的满意度较差。

【发明内容】

[0007]有鉴于此,本发明实施例提供了一种文件发送方法、接收方法、系统及设备,以便解决现有Telnet协议无法直接传输二进制数据所导致的负面问题。所述技术方案如下:
[0008]第一方面,提供了一种文件发送方法,所述方法包括:
[0009]将二进制的文件传输协议数据转码成字符串数据;
[0010]将所述字符串数据利用Telnet协议发送给对端设备,以便所述对端设备对所述字符串数据转码后获得所述二进制的文件传输协议数据。
[0011]在第一方面的第一种可能的实施方式中,所述将二进制的文件传输协议数据转码成字符串数据,具体包括:
[0012]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0013](c?4)+ ‘A’作为转码后的第一 ASCII码;[0014](c&OxF) + ‘A’ 作为转码后第二 ASCII 码;
[0015]将转码后获得所有ASCII码作为所述字符串数据。
[0016]在第一方面的第二种可能的实施方式中,所述将二进制的文件传输协议数据转码成字符串数据,具体包括:
[0017]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0018](c&OxF) + ‘A,作为第一 ASCII 码;
[0019](c>>4)+ ‘A,作为第二 ASCII 码;
[0020]将转码后获得所有ASCII码作为所述字符串数据。
[0021]结合第一方面、第一方面的第一种或者第二种可能的实施方式,在第三种可能的实施方式中,所述将二进制的文件传输协议数据转码成字符串数据之前,还包括:
[0022]根据协议报文和协议数据生成所述二进制的文件传输协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
[0023]结合第一方面的第三种可能的实施方式,在第四种可能的实施方式中,所述根据协议报文和协议数据生成所述二进制的文件传输协议数据,具体包括:
[0024]将所述协议报文置于所述协议数据之前组合成为初始文件;
[0025]在所述初始文件的头部添加识别校验码,生成所述二进制的文件传输协议数据。
[0026]结合第一方面、第一方面的第一种或者第二种可能的实施方式,在第五种可能的实施方式中,所述将所述字符串数据利用Telnet协议发送给对端设备之前,还包括:
[0027]在所述字符串数据的头部添加识别标记,以便所述对端设备根据所述识别标记识别出所述字符串数据为经过转码的二进制的文件传输协议数据;
[0028]所述将所述字符串数据利用Telnet协议发送给对端设备,对应包括:
[0029]将添加所述识别标记后的字符串数据利用Telnet协议发送给对端设备。
[0030]第二方面,提供了一种文件接收方法,所述方法包括:
[0031]利用Telnet协议接收对端设备发送的字符串数据;
[0032]将所述字符串数据转码成二进制的文件传输协议数据。
[0033]在第二方面的第一种可能的实施方式中,所述将所述字符串数据转码成二进制的文件传输协议数据,具体包括:
[0034]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0035]((第一个ASCII 码-‘A’)〈〈4)| (第二个 ASCII 码-‘A’);
[0036]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0037]在第二方面的第二种可能的实施方式中,所述将所述字符串数据转码成二进制的文件传输协议数据,具体包括:
[0038]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0039]((第一个ASCII 码-‘A’)I (第二个 ASCII 码-‘A’)〈〈4);
[0040]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0041]结合第二方面、第二方面的第一种或者第二种可能的实施方式,在第三种可能的实施方式中,所述将所述字符串数据转码成二进制的文件传输协议数据之后,还包括:[0042]从所述二进制的文件传输协议数据中获取协议报文和协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
[0043]结合第二方面的第三种可能的实施方式,在第四种可能的实施方式中,所述从所述二进制的文件传输协议数据中获取协议报文和协议数据,具体包括:
[0044]识别所述二进制的文件传输协议数据的头部的识别校验码是否合法;
[0045]若识别出所述识别校验码合法,则从所述二进制的文件传输协议数据中依次分离出协议报文和协议数据。
[0046]结合第二方面、第二方面的第一种或者第二种可能的实施方式,在第五种可能的实施方式中,所述将所述字符串数据转码成二进制的文件传输协议数据之前,还包括:
[0047]根据识别标记检测所述字符串数据是否为经过转码的二进制的文件传输协议数据;
[0048]若检测到所述字符串数据为经过转码的二进制的文件传输协议数据,则执行所述将所述字符串数据转码成二进制的文件传输协议数据的步骤。 [0049]第三方面,提供了一种文件发送设备,所述设备包括:
[0050]第一转码模块,用于将二进制的文件传输协议数据转码成字符串数据;
[0051]文件发送模块,将所述第一转码模块转码后得到的字符串数据利用Telnet协议发送给对端设备,以便所述对端设备对所述字符串数据转码后获得所述二进制的文件传输协议数据。
[0052]在第三方面的第一种可能的实施方式中,所述第一转码模块,具体用于:
[0053]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0054](c?4) + ‘A’作为转码后的第一 ASCII码;
[0055](c&OxF) + ‘A’ 作为转码后第二 ASCII 码;
[0056]将转码后获得所有ASCII码作为所述字符串数据。
[0057]在第三方面的第二种可能的实施方式中,所述第一转码模块,具体用于:
[0058]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0059](c&OxF) + ‘A’ 作为第一 ASCII 码;
[0060](c?4) + ‘A’ 作为第二 ASCII 码;
[0061]将转码后获得所有ASCII码作为所述字符串数据。
[0062]结合第三方面、第三方面的第一种或者第二种可能的实施方式,在第三种可能的实施方式中,所述文件发送设备,还包括:
[0063]第一生成模块;
[0064]所述第一生成模块,用于根据协议报文和协议数据生成所述二进制的文件传输协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
[0065]结合第三方面的第三种可能的实施方式,在第四种可能的实施方式中,所述第一生成模块,具体包括:[0066]组合单元和生成单元;
[0067]所述组合单元,用于将所述协议报文置于所述协议数据之前组合成为初始文件;
[0068]所述生成单元,用于在所述组合单元组合得到的初始文件的头部添加识别校验码,生成所述二进制的文件传输协议数据。
[0069]结合第三方面、第三方面的第一种或者第二种可能的实施方式,在第五种可能的实施方式中,所述文件发送设备,还包括:
[0070]标记添加模块;
[0071]所述标记添加模块,用于在所述第一转码模块转码后得到的字符串数据的头部添加识别标记,以便所述对端设备根据所述识别标记识别出所述字符串数据为经过转码的二进制的文件传输协议数据;
[0072]所述文件发送模块,具体用于将所述标记添加模块添加所述识别标记后的字符串数据利用Telnet协议发送给对端设备。
[0073]第四方面,提供了一种文件接收设备,所述设备包括:
[0074]文件接收模块,用于利用Telnet协议接收对端设备发送的字符串数据;
[0075]第二转码模块,用于将所述文件接收模块接收到的字符串数据转码成二进制的文件传输协议数据。
[0076]在第四方面的第一种可能的实施方式中,所述第二转码模块,具体用于:
[0077]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0078]((第一个ASCII 码-‘A’)〈〈4)| (第二个 ASCII 码-‘A’);
[0079]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0080]在第四方面的第二种可能的实施方式中,所述第二转码模块,具体用于:
[0081]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0082]((第一个ASCII 码-‘A’)I (第二个 ASCII 码-‘A’)〈〈4);
[0083]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0084]结合第四方面、第四方面的第一种或者第二种可能的实施方式,在第三种可能的实施方式中,所述文件接收设备,还包括:
[0085]第二获取模块;
[0086]所述第二获取模块,用于从所述第二转码模块转码得到的二进制的文件传输协议数据中获取协议报文和协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
[0087]结合第四方面的第三种可能的实施方式,在第四种可能的实施方式中,所述第二获取模块,具体包括:
[0088]识别单元和分离单元;
[0089]所述识别单元,用于识别所述二进制的文件传输协议数据的头部的识别校验码是否合法;
[0090]所述分离单元,用于若所述识别单元识别出所述识别校验码合法,则从所述二进制的文件传输协议数据中依次分离出协议报文和协议数据。
[0091]结合第四方面、第四方面的第一种或者第二种可能的实施方式,在第五种可能的实施方式中,所述文件接收设备,还包括:[0092]文件检测模块;
[0093]所述文件检测模块,用于根据识别标记检测所述文件接收模块接收到的字符串数据是否为经过转码的二进制的文件传输协议数据;
[0094]所述第二转码模块,用于若所述文件检测模块检测到所述字符串数据为经过转码的二进制的文件传输协议数据,则执行所述将所述字符串数据转码成二进制的文件传输协议数据的步骤。
[0095]第五方面,提供了一种文件传输系统,所述系统包括如第三方面或者第三方面的各种可能实施方式中所述的文件发送设备,和第四方面或者第四方面的各种可能实施方式中所述的文件接收设备。
[0096]本发明实施例提供的技术方案带来的有益效果是:
[0097]通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。
【专利附图】

【附图说明】
[0098]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0099]图1是本发明实施例所涉及的一种实施环境的结构示意图;
[0100]图2是本发明实施例一提供的文件传输方法的方法流程图;
[0101]图3A是本发明实施例二提供的文件传输方法的方法流程图;
[0102]图3B是本发明实施例二提供的二进制的文件传输协议数据的结构示意图;
[0103]图3C是本发明实施例二提供的字符串数据的结构示意图;
[0104]图4是本发明实施例三提供的文件传输系统的结构示意图;
[0105]图5是本发明实施例四提供的文件传输系统的结构示意图;
[0106]图6是本发明实施例五和六提供的文件传输系统的结构示意图。
【具体实施方式】
[0107]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0108]请参考图1,其示出了本发明实施例所涉及的一种实施环境的结构示意图。该实施环境包括客户端120、中转服务器142、中转服务器14x和服务器160。其中:
[0109]客户端120可以是用户使用的设备,出于对信息安全的考虑,客户端120通常不使用公网IP地址直接连接服务器160,而是通过多级中转服务器进行中转。
[0110]客户端120可以首先登陆到中转服务器142,然后登陆到下一级中转服务器144,、、、,直至登陆到最后一级中转服务器14x,最后登陆到服务器160。
[0111]客户端120和服务器160连接时,使用Telnet协议。[0112]实施例一
[0113]请参考图2,其示出了本发明实施例一提供的文件传输方法的方法流程图。本实施例主要以图1中的客户端120作为发送端,服务器160作为接收端来举例说明。该文件传输方法,包括:
[0114]步骤202,发送端将二进制的文件传输协议数据转码成字符串数据;
[0115]发送端将需要发送的二进制的文件传输协议数据转码成字符串数据。
[0116]步骤204,发送端将字符串数据利用Telnet协议发送给对端设备;
[0117]发送端将转码后获得的字符串数据利用Telnet协议发送给对端设备(接收端)。具体来讲,发送端可以预先通过Telnet协议与接收端建立连接,进行调试维护;如果调试过程中,发送端需要向对端设备发送二进制的文件传输协议数据,则执行步骤202和步骤204。
[0118]步骤206,接收端利用Telnet协议接收对端设备发送的字符串数据,将字符串数据转码成二进制的文件传输协议数据。
[0119]相应地,接收端利用Telnet协议接收对端设备(发送端)发送的字符串数据。
[0120]接收端将接收到的字符串数据按照与步骤202相逆的操作转码成二进制的文件传输协议数据,从而接收到了该二进制的文件传输协议数据。
[0121]综上所述,本实施例提供的文件传输方法,通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和相应的端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。
[0122]需要说明的是,上述步骤202和步骤204可以单独实现成为文件发送方法;上述步骤206可以单独实现成为文件接收方法。上述服务器160也可以作为发送端,上述客户端120也可以作为接收端。
[0123]实施例二
[0124]请参考图3A,其示出了本发明实施例二提供的文件传输方法的方法流程图。本实施例主要以图1中的客户端120作为发送端,服务器160作为接收端来举例说明。该文件传输方法,包括:
[0125]步骤302,发送端根据协议报文和协议数据生成二进制的文件传输协议数据;
[0126]由于发送端和接收端仍然可以使用现有的FTP/TFTP/SFTP协议来进行文件传输。在发送端需要发送二进制的文件传输协议数据时,可以根据相关协议的协议报文和需要发送的协议数据生成二进制的文件传输协议数据。
[0127]协议报文包括但不限于TFTP报文、FTP报文和SFTP报文中的一种;协议数据包括但不限于配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
[0128]优选地,在根据协议报文和协议数据生成二进制的文件传输协议数据的过程中,可以添加识别校验码。具体步骤如下:
[0129]第一,将协议报文置于协议数据之前组合成为初始文件;
[0130]第二,在初始文件的头部添加识别校验码,生成二进制的文件传输协议数据。
[0131]生成的二进制的文件传输协议数据的结构示意图,可以参考图3B所示。
[0132]步骤304,发送端将二进制的文件传输协议数据转码成字符串数据;[0133]将二进制的文件传输协议数据转码成字符串数据可能有多种不同的方式,本实施例中提供的一种较为高效的转码方式具体如下:
[0134]将二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII码:
[0135](c?4)+ ‘A’作为转码后的第一 ASCII码;
[0136](c&OxF)+ ‘A’ 作为转码后第二 ASCII 码;
[0137]将转码后获得所有ASCII码作为字符串数据。
[0138]比如,字节OxFE转码后会成为ASCII码‘P,和‘O’。
[0139]当然,如果将上述第一 ASCII码和第二 ASCII码的顺序颠倒,本步骤也可以实现成为:
[0140]将二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII码:
[0141](c&OxF) + ‘A’ 作为第一 ASCII 码;
[0142](c>>4)+ ‘A’ 作为第二 ASCII 码;
[0143]将转码后获得所有ASCII码作为字符串数据。
[0144]优选地,在转码获得字符串数据之后,可以在字符串数据的头部添加识别标记,以便对端设备根据识别标记识别出字符串数据为经过转码的二进制的文件传输协议数据。此时,字符串数据的结构示意图可以参考图3C所示。
[0145]步骤306,发送端将字符串数据利用Telnet协议发送给对端设备。
[0146]发送端将转码后获得的字符串数据利用Telnet协议发送给对端设备(接收端)。具体地讲,如果字符串数据的头部添加了识别标记,则将添加了识别标记后的字符串数据利用Telnet协议发送给接收端。
[0147]步骤308,接收端利用Telnet协议接收对端设备发送的字符串数据,根据识别标记检测字符串数据是否为经过转码的二进制的文件传输协议数据;
[0148]相应地,接收端利用Telnet协议接收对端设备(发送端)发送的字符串数据。
[0149]接收端接收到字符串数据之后,判断字符串数据的头部是否存在识别标记,如果字符串数据的头部不存在识别标记,则表示该字符串数据为普通的字符串,接收端将该普通的字符串进行显示即可;如果字符串数据的头部存在识别标记,则表示该字符串数据为经过转码的二进制的文件传输协议数据,进入步骤310。
[0150]步骤310,若检测到字符串数据为经过转码的二进制的文件传输协议数据,接收端将字符串数据转码成二进制的文件传输协议数据。
[0151]接收端将接收到的字符串数据按照与步骤304相逆的操作转码成二进制的文件传输协议数据,从而接收到了该二进制的文件传输协议数据。具体地讲,本步骤可以包括如下子步骤:
[0152]将字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0153]((第一个ASCII 码-‘A’)〈〈4)| (第二个 ASCII 码-‘A’);
[0154]将转码后获得所有字节作为二进制的文件传输协议数据。
[0155]比如,字符串‘PO’转码后会成为字节OxFE。
[0156]或者,本步骤可以包括如下子步骤:[0157]将字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0158]((第一个ASCII 码-‘A’)I (第二个 ASCII 码-‘A’)〈〈4);
[0159]将转码后获得所有字节作为二进制的文件传输协议数据。
[0160]步骤312,接收端从二进制的文件传输协议数据中获取协议报文和协议数据。
[0161]然后,接收端可以从二进制的文件传输协议数据中获取协议报文和协议数据,协议报文包括但不限于TFTP报文、FTP报文和SFTP报文中的一种;协议数据包括但不限于配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
[0162]优选地,如果步骤302中在二进制的文件传输协议数据的头部添加了识别校验码,本步骤对应包括如下子步骤:
[0163]识别二进制的文件传输协议数据的头部的识别校验码是否合法;
[0164]若识别出识别校验码合法,则从二进制的文件传输协议数据中依次分离出协议报文和协议数据,然后将协议报文和协议数据按照对应的协议进行处理,比如,将FTP报文和FTP数据交由FTP协议模块来进行后续处理。
[0165]若识别出识别校验码不合法,则不处理或者将步骤308中接收到的字符串数据作为普通的字符串处理。
[0166]综上所述,本实施例提供的文件传输方法,通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和对应的端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。同时,通过添加识别标记和识别校验码中的任意一个或者两个来实现本实施例提供的文件传输方法与现有Telnet协议的兼容和共存。
[0167]需要说明的是,上述步骤302至步骤306可以单独实现成为文件发送方法;上述步骤308至步骤312可以单独实现成为文件接收方法。上述服务器160也可以作为发送端,上述客户端120也可以作为接收端。上述二进制的文件传输协议数据被转码成字符串数据传输后,中转服务器可以在整个传输过程中直接透传,不需要做相应的修改。
[0168]实施例三
[0169]请参考图4,其示出了本发明实施例三提供的文件传输系统的结构方框图。该文件传输系统包括文件发送设备420和文件接收设备440。
[0170]文件发送设备420包括第一转码模块422和文件发送模块424 ;
[0171]第一转码模块422,用于将二进制的文件传输协议数据转码成字符串数据;
[0172]文件发送模块424,将所述第一转码模块422转码后得到的字符串数据利用Telnet协议发送给对端设备,以便所述对端设备对所述字符串数据进行转码后获得所述二进制的文件传输协议数据。
[0173]文件接收设备440,包括文件接收模块442和第二转码模块444 ;
[0174]文件接收模块442,用于利用Telnet协议接收对端设备发送的字符串数据;
[0175]第二转码模块444,用于将所述文件接收模块442接收到的字符串数据转码成二进制的文件传输协议数据。
[0176]综上所述,本实施例提供的文件传输系统,通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和相应的端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。
[0177]实施例四
[0178]请参考图5,其示出了本发明实施例四提供的文件传输系统的结构方框图。该文件传输系统包括文件发送设备420和文件接收设备440。
[0179]文件发送设备420包括第一生成模块421、第一转码模块422、标记添加模块423和文件发送模块424。
[0180]第一生成模块421,用于根据协议报文和协议数据生成所述二进制的文件传输协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
[0181]协议报文和协议数据可以由相应的TFTP/FTP/SFTP客户端来生成,此过程为本领域技术人员所熟知的内容,此过程不再赘述。
[0182]在优选地方案中,第一生成模块421可以包括组合单元421a和生成单元421b ;
[0183]所述组合单元421a,用于将所述协议报文置于所述协议数据之前组合成为初始文件;
[0184]所述生成单元421b,用于在所述组合单元组合得到的初始文件的头部添加识别校验码,生成所述二进制的文件传输协议数据。
[0185]第一转码模块422,用于将所述第一生成模块421生成的二进制的文件传输协议数据转码成字符串数据。具体地讲,所述第一转码模块422,用于:
[0186]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0187](c?4)+ ‘A’作为转码后的第一 ASCII码;
[0188](c&OxF)+ ‘A’ 作为转码后第二 ASCII 码;
[0189]将转码后获得所有ASCII码作为所述字符串数据。
[0190]或者,所述第一转码模块422,用于:
[0191]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0192](c&OxF) + ‘A’ 作为第一 ASCII 码;
[0193](c>>4)+ ‘A’ 作为第二 ASCII 码;
[0194]将转码后获得所有ASCII码作为所述字符串数据。
[0195]所述标记添加模块423,用于在所述第一转码模块422转码后得到的字符串数据的头部添加识别标记,以便所述对端设备根据所述识别标记识别出所述字符串数据为经过转码的二进制的文件传输协议数据;
[0196]所述文件发送模块424,用于将所述标记添加模块423添加所述识别标记后的字符串数据利用Telnet协议发送给对端设备。
[0197]文件接收设备440包括文件接收模块442、文件检测模块443、第二转码模块444和第二获取模块445。
[0198]文件接收模块442,用于利用Telnet协议接收对端设备发送的字符串数据;
[0199]文件检测模块443,用于根据识别标记检测所述文件接收模块442接收到的字符串数据是否为经过转码的二进制的文件传输协议数据;
[0200]第二转码模块444,用于若所述文件检测模块443检测到所述字符串数据为经过转码的二进制的文件传输协议数据,则将所述字符串数据转码成二进制的文件传输协议数据。具体地讲,所述第二转码模块444,用于:
[0201]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0202]((第一个ASCII 码-‘A’)〈〈4)| (第二个 ASCII 码-‘A’);
[0203]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0204]或者,所述第二转码模块444,用于:
[0205]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0206]((第一个ASCII 码-‘A’)I (第二个 ASCII 码-‘A’)〈〈4);
[0207]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0208]第二获取模块445,用于从所述第二转码模块444转码得到的二进制的文件传输协议数据中获取协议报文和协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。在优选地方案中,所述第二获取模块445,具体包括:
[0209]识别单元445a和分离单元445b ;
[0210]所述识别单元445a,用于识别所述二进制的文件传输协议数据的头部的识别校验码是否合法;
[0211]所述分离单元445b,用于若所述识别单元445a识别出所述识别校验码合法,则从所述二进制的文件传输协议数据中依次分离出协议报文和协议数据。
[0212]分离出的协议报文和协议数据可以交由相应的TFTP/FTP/SFTP客户端来处理,此过程为本领域技术人员所熟知的内容,此过程不再赘述。
[0213]综上所述,本实施例提供的文件传输系统,通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。同时,通过添加识别标记和识别校验码中的任意一个或者两个来实现本实施例提供的文件传输系统与现有Telnet协议的兼容和共存。
[0214]实施例五
[0215]请参考图6,其示出了本发明实施例五提供的文件传输系统的结构方框图。该文件传输系统包括文件发送设备620和文件接收设备640。
[0216]文件发送设备620包括处理器622和发射机624 ;
[0217]处理器622,用于将二进制的文件传输协议数据转码成字符串数据;
[0218]发射机624,将所述处理器622转码后得到的字符串数据利用Telnet协议发送给对端设备,以便所述对端设备对所述字符串数据进行转码后获得所述二进制的文件传输协议数据。
[0219]文件接收设备640,包括接收机642和处理器644 ;
[0220]接收机642,用于利用Telnet协议接收对端设备发送的字符串数据;
[0221]处理器644,用于将所述接收机642接收到的字符串数据转码成二进制的文件传输协议数据。
[0222]综上所述,本实施例提供的文件传输系统,通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。
[0223]实施例六
[0224]请继续参考图6,其示出了本发明实施例六提供的文件传输系统的结构方框图。作为更为优选地实施例,该文件传输系统包括文件发送设备620和文件接收设备640。
[0225]文件发送设备620包括处理器622和发射机624。
[0226]处理器622,用于根据协议报文和协议数据生成所述二进制的文件传输协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩 包和补丁文件中的一种或几种。
[0227]协议报文和协议数据可以由相应的TFTP/FTP/SFTP客户端来生成,此过程为本领域技术人员所熟知的内容,此过程不再赘述。
[0228]在优选地方案中,
[0229]所述处理器622,还用于将所述协议报文置于所述协议数据之前组合成为初始文件;
[0230]所述处理器622,还用于在组合得到的初始文件的头部添加识别校验码,生成所述二进制的文件传输协议数据。
[0231 ] 所述处理器622,还用于将二进制的文件传输协议数据转码成字符串数据。具体地讲,所述处理器622,用于:
[0232]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0233](c?4)+ ‘A’作为转码后的第一 ASCII码;
[0234](c&OxF) + ‘A’ 作为转码后第二 ASCII 码;
[0235]将转码后获得所有ASCII码作为所述字符串数据。
[0236]或者,所述处理器622,用于:
[0237]将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII 码:
[0238](c&OxF) + ‘A’ 作为第一 ASCII 码;
[0239](c?4) + ‘A’ 作为第二 ASCII 码;
[0240]将转码后获得所有ASCII码作为所述字符串数据。
[0241]所述处理器622,还用于在转码后得到的字符串数据的头部添加识别标记,以便所述对端设备根据所述识别标记识别出所述字符串数据为经过转码的二进制的文件传输协议数据;
[0242]所述发射机624,用于将所述处理器622添加所述识别标记后的字符串数据利用Telnet协议发送给对端设备。
[0243]文件接收设备640包括接收机642和处理器644。
[0244]接收机642,用于利用Telnet协议接收对端设备发送的字符串数据;[0245]处理器644,用于根据识别标记检测所述接收机642接收到的字符串数据是否为经过转码的二进制的文件传输协议数据;
[0246]处理器644,还用于若检测到所述字符串数据为经过转码的二进制的文件传输协议数据,则将所述字符串数据转码成二进制的文件传输协议数据。具体地讲,所述处理器644,用于:
[0247]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0248]((第一个ASCII 码-‘A’)〈〈4)| (第二个 ASCII 码-‘A’);
[0249]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0250]或者,所述第二转码模块444,用于:
[0251]将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:
[0252]((第一个ASCII 码-‘A’)I (第二个 ASCII 码-‘A’)〈〈4);
[0253]将转码后获得所有字节作为所述二进制的文件传输协议数据。
[0254]处理器644,还用于从转码得到的二进制的文件传输协议数据中获取协议报文和协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。在优选地方案中,
[0255]所述处理器644,用于识别所述二进制的文件传输协议数据的头部的识别校验码是否合法;
[0256]所述处理器644,用于若识别出所述识别校验码合法,则从所述二进制的文件传输协议数据中依次分离出协议报文和协议数据。
[0257]分离出的协议报文和协议数据可以交由相应的TFTP/FTP/SFTP客户端来处理,此过程为本领域技术人员所熟知的内容,此过程不再赘述。
[0258]综上所述,本实施例提供的文件传输系统,通过将二进制的文件传输协议数据转码为字符串数据,然后利用Telnet协议来进行传输,解决了现有Telnet协议无法直接传输二进制数据所导致的负面问题,达到了在使用Telnet协议远程维护时,不需要另行开通专线和相应的端口,就可以实现二进制的文件传输协议数据的发送和接收的效果。同时,通过添加识别标记和识别校验码中的任意一个或者两个来实现本实施例提供的文件传输系统与现有Telnet协议的兼容和共存。
[0259]需要说明的是:上述实施例提供的文件传输系统在Telnet协议下传输文件时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的文件传输系统与文件传输方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0260]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0261]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0262]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种文件发送方法,其特征在于,所述方法包括: 将二进制的文件传输协议数据转码成字符串数据; 将所述字符串数据利用Telnet协议发送给对端设备,以便所述对端设备对所述字符串数据进行转码后获得所述二进制的文件传输协议数据。
2.根据权利要求1所述的文件发送方法,其特征在于,所述将二进制的文件传输协议数据转码成字符串数据,具体包括: 将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII码: (c?4) + ‘A’作为转码后的第一 ASCII码; (c&OxF) + ‘A’作为转码后第二 ASCII码; 将转码后获得所有ASCII码作为所述字符串数据。
3.根据权利要求1所述的文件发送方法,其特征在于,所述将二进制的文件传输协议数据转码成字符串数据,具体包括: 将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII码: (c&OxF) + ‘A’ 作为第一 ASCII 码; (c?4)+ ‘A’ 作为第二 ASCII 码; 将转码后获得所有ASCII码作为所述字符串数据。
4.根据权利要求1至3任一所述的文件发送方法,其特征在于,所述将二进制的文件传输协议数据转码成字符串数据之前,还包括: 根据协议报文和协议数据生成所述二进制的文件传输协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
5.根据权利要求4所述的文件发送方法,其特征在于,所述根据协议报文和协议数据生成所述二进制的文件传输协议数据,具体包括: 将所述协议报文置于所述协议数据之前组合成为初始文件; 在所述初始文件的头部添加识别校验码,生成所述二进制的文件传输协议数据。
6.根据权利要求1至3任一所述的文件发送方法,其特征在于,所述将所述字符串数据利用Telnet协议发送给对端设备之前,还包括: 在所述字符串数据的头部添加识别标记,以便所述对端设备根据所述识别标记识别出所述字符串数据为经过转码的二进制的文件传输协议数据; 所述将所述字符串数据利用Telnet协议发送给对端设备,对应包括: 将添加所述识别标记后的字符串数据利用Telnet协议发送给对端设备。
7.一种文件接收方法,其特征在于,所述方法包括: 利用Telnet协议接收对端设备发送的字符串数据; 将所述字符串数据转码成二进制的文件传输协议数据。
8.根据权利要求7所述的文件接收方法,其特征在于,所述将二进制的文件传输协议数据转码成字符串数据,具体包括: 将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c:((第一个 ASCII 码-‘A’)〈〈4)| (第二个 ASCII 码-‘A’); 将转码后获得所有字节作为所述二进制的文件传输协议数据。
9.根据权利要求7所述的文件接收方法,其特征在于,所述将二进制的文件传输协议数据转码成字符串数据,具体包括: 将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c: ((第一个 ASCII 码-‘A’)I (第二个 ASCII 码-‘A’)〈〈4); 将转码后获得所有字节作为所述二进制的文件传输协议数据。
10.根据权利要求7至9任一所述的文件接收方法,其特征在于,所述将所述字符串数据转码成二进制的文件传输协议数据之后,还包括: 从所述二进制的文件传输协议数据中获取协议报文和协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中 的一种或几种。
11.根据权利要求10所述的文件接收方法,其特征在于,所述从所述二进制的文件传输协议数据中获取协议报文和协议数据,具体包括: 识别所述二进制的文件传输协议数据的头部的识别校验码是否合法; 若识别出所述识别校验码合法,则从所述二进制的文件传输协议数据中依次分离出协议报文和协议数据。
12.根据权利要求7至9任一所述的文件接收方法,其特征在于,所述将所述字符串数据转码成二进制的文件传输协议数据之前,还包括: 根据识别标记检测所述字符串数据是否为经过转码的二进制的文件传输协议数据;若检测到所述字符串数据为经过转码的二进制的文件传输协议数据,则执行所述将所述字符串数据转码成二进制的文件传输协议数据的步骤。
13.一种文件发送设备,其特征在于,所述设备包括: 第一转码模块,用于将二进制的文件传输协议数据转码成字符串数据; 文件发送模块,将所述第一转码模块转码后得到的字符串数据利用Telnet协议发送给对端设备,以便所述对端设备对所述字符串数据进行转码后获得所述二进制的文件传输协议数据。
14.根据权利要求13所述的文件发送设备,其特征在于,所述第一转码模块,具体用于: 将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII码: (c?4) + ‘A’作为转码后的第一 ASCII码; (c&OxF) + ‘A’作为转码后第二 ASCII码; 将转码后获得所有ASCII码作为所述字符串数据。
15.根据权利要求13所述的文件发送设备,其特征在于,所述第一转码模块,具体用于: 将所述二进制的文件传输协议数据中的每个字节c按照如下操作转码成两个ASCII码: (c&OxF) + ‘A’ 作为第一 ASCII 码;(c?4)+ ‘A’ 作为第二 ASCII 码; 将转码后获得所有ASCII码作为所述字符串数据。
16.根据权利要求13至15任一所述的文件发送设备,其特征在于,所述文件发送设备,还包括: 第一生成模块; 所述第一生成模块,用于根据协议报文和协议数据生成所述二进制的文件传输协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
17.根据权利要求16所述的文件发送设备,其特征在于,所述第一生成模块,具体包括: 组合单元和生成单元; 所述组合单元,用于将所述协议报文置于所述协议数据之前组合成为初始文件;所述生成单元,用于在所述组合单元组合得到的初始文件的头部添加识别校验码,生成所述二进制的文件传输协议数据。
18.根据权利要求13至15任一所述的文件发送设备,其特征在于,所述文件发送设备,还包括: 标记添加模块; 所述标记添加模块,用于在所述第一转码模块转码后得到的字符串数据的头部添加识别标记,以便所述对端设备根据所述识别标记识别出所述字符串数据为经过转码的二进制的文件传输协议数据; 所述文件发送模块,具体用于将所述标记添加模块添加所述识别标记后的字符串数据利用Telnet协议发送给对端设备。
19.一种文件接收设备,其特征在于,所述设备包括: 文件接收模块,用于利用Telnet协议接收对端设备发送的字符串数据; 第二转码模块,用于将所述文件接收模块接收到的字符串数据转码成二进制的文件传输协议数据。
20.根据权利要求19所述的文件接收设备,其特征在于,所述第二转码模块,具体用于: 将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c: ((第一个 ASCII 码-‘A’)〈〈4)| (第二个 ASCII 码-‘A’); 将转码后获得所有字节作为所述二进制的文件传输协议数据。
21.根据权利要求19所述的文件接收设备,其特征在于,所述第二转码模块,具体用于: 将所述字符串数据中的每两个ASCII码按照如下操作转码成一个字节c: ((第一个 ASCII 码-‘A’)| (第二个 ASCII 码-‘A’)〈〈4); 将转码后获得所有字节作为所述二进制的文件传输协议数据。
22.根据权利要求19至21任一所述的文件接收设备,其特征在于,所述文件接收设备,还包括: 第二获取模块;所述第二获取模块,用于从所述第二转码模块转码得到的二进制的文件传输协议数据中获取协议报文和协议数据,所述协议报文包括TFTP报文、FTP报文和SFTP报文中的一种;所述协议数据包括配置文件、数据库、日志包、压缩包和补丁文件中的一种或几种。
23.根据权利要求22所述的文件接收设备,其特征在于,所述第二获取模块,具体包括: 识别单元和分离单元; 所述识别单元,用于识别所述二进制的文件传输协议数据的头部的识别校验码是否合法; 所述分离单元,用于若所述识别单元识别出所述识别校验码合法,则从所述二进制的文件传输协议数据中依次分离出协议报文和协议数据。
24.根据权利要求19至21任一所述的文件接收设备,其特征在于,所述文件接收设备,还包括: 文件检测模块; 所述文件检测模块,用于根据识别标记检测所述文件接收模块接收到的字符串数据是否为经过转码的二进制的文件传输协议数据; 所述第二转码模块,用于若所述文件检测模块检测到所述字符串数据为经过转码的二进制的文件传输协议数据,则执行所述将所述字符串数据转码成二进制的文件传输协议数据的步骤。
25.一种文件传输系统,其特征在于,所述系统包括如权利要求13至18任一所述的文件发送设备,和如权利要求19至24任一所述的文件接收设备。
【文档编号】H04L29/08GK103841143SQ201210482691
【公开日】2014年6月4日 申请日期:2012年11月23日 优先权日:2012年11月23日
【发明者】周灿, 张艳华, 林竞 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1