船载卫星通信方法、装置、岸端中心站及船载端站
技术领域
本申请涉及卫星通信技术领域,特别是涉及一种船载卫星通信方法、装置、岸端中心站及船载端站。
背景技术
一直以来,海上通信始终制约着人们走向海洋的距离。随着信息时代的发展,互联网浪潮已经扩展到了航海业,人们对海上通信的需求不断上升,业务量的增多,业务种类的多样化已呈爆发式的增长。众所周知,无论是军舰还是渔船、商船,通信系统都是必备的,而随着技术的发展,通信方式也日趋多样化。由于海洋的幅员辽阔,海上通信客观条件的制约,在海上通信系统中,使用卫星链路作为通信方式已经成为目前主要的手段。
在实现过程中,发明人发现传统技术中至少存在如下问题:由于卫星链路具有带宽小,费用高,不稳定的特点,并且船载端站用户数量多,用户业务分布呈现潮汐现象,通常在业务繁忙期间,卫星链路带宽无法承载所有船载端站用户的业务需求,容易造成业务碰撞、数据包频繁丢弃且重传超时,从而进一步增加了网络开销,加重了卫星链路的负荷。
发明内容
基于此,有必要针对上述技术问题,提供一种能够减轻卫星链路的负荷的船载卫星通信方法、装置、岸端中心站及船载端站。
为了实现上述目的,一方面,本发明实施例提供了一种从岸端中心站角度实施的船载卫星通信方法,包括:
获取各船载端站的缓存队列状态信息;
根据各缓存队列状态信息、对船载端站的各端站缓存队列分别进行资源分配,得到上行调度信息;
向船载端站下发上行调度信息;上行调度信息用于指示船载端站上传对应端站缓存队列的业务数据包。
在其中一个实施例中,获取各船载端站的缓存队列状态信息的步骤,包括:
接收各船载端站上传的状态报告报文;状态报告报文包含端站缓存队列状态信息;端站缓存队列状态信息包括端站缓存队列首包到达时刻、端站缓存队列时延要求及端站缓存队列缓存量;端站缓存队列首包到达时刻为位于队首的业务数据包进入端站缓存队列的时刻。
在其中一个实施例中,根据各缓存队列状态信息、对船载端站的各端站缓存队列分别进行资源分配,得到上行调度信息的步骤包括:
根据各端站缓存队列剩余时延,确认各端站缓存队列传输时长的时序,得到各端站缓存队列传输时段;端站缓存队列剩余时延为端站缓存队列时延要求与端站缓存队列等待时延的差值;端站缓存队列等待时延为端站缓存队列资源分配时刻与端站缓存队列首包到达时刻的时差;端站缓存队列传输时长为端站缓存队列缓存量与卫星通信速率的比;
对端站缓存队列传输时段进行划分,得到各上行调度时间段;
基于端站缓存队列标识以及上行调度时间段,得到上行调度信息。
在其中一个实施例中,向船载端站下发上行调度信息的步骤包括:
在下发时刻,将上行调度信息传输给船载端站;下发时刻早于上行调度时间段的起始时刻。
另一方面,本发明实施例还提供了一种从岸端中心站角度实施的船载卫星通信方法,包括:
根据岸端缓存队列状态信息、分别对岸端缓存队列进行资源分配,得到下行调度信息;
将对应下行调度信息的岸端缓存队列的业务数据包,下发至相应的船载端站。
在其中一个实施例中,岸端缓存队列状态信息包括岸端缓存队列首包到达时刻、岸端缓存队列时延要求及岸端缓存队列缓存量;岸端缓存队列首包到达时刻为位于队首的业务数据包进入岸端缓存队列的时刻;下行调度信息包括下行调度时间段和岸端缓存队列标识;
根据岸端缓存队列状态信息、分别对岸端缓存队列进行资源分配,得到下行调度信息的步骤包括:
根据各岸端缓存队列剩余时延,确认各岸端缓存队列传输时长的时序,得到各岸端缓存队列传输时段;岸端缓存队列剩余时延为岸端缓存队列时延要求与岸端缓存队列等待时延的差;岸端缓存队列等待时延为岸端缓存队列资源分配时刻与岸端缓存队列首包到达时刻的差;岸端缓存队列传输时长为岸端缓存队列缓存量与卫星通信速率的比;
对岸端缓存队列传输时段进行划分,得到各下行调度时间段;
基于岸端缓存队列标识以及下行调度时间段,得到下行调度信息。
在其中一个实施例中,将对应下行调度信息的岸端缓存队列的业务数据包,下发至相应的船载端站的步骤包括:
在下行调度时间段内,将对应岸端缓存队列标识的岸端缓存队列的业务数据包下发至船载端站。
在其中一个实施例中,还包括步骤:
在调度时刻,将下行调度信息下发给相应的船载端站;调度时刻早于下行调度时间段的起始时刻。
一种从船载端站角度实施的船载卫星通信方法,包括:
接收岸端中心站下发的上行调度信息;上行调度信息为各端站缓存队列经岸端中心站根据缓存队列状态信息进行资源分配得到;
将对应上行调度信息的端站缓存队列的业务数据包,上传给岸端中心站。
在其中一个实施例中,还包括步骤:
上传状态报告报文至岸端中心站;状态报告报文包括端站缓存队列状态信息;端站缓存队列状态信息包括端站缓存队列首包到达时刻、端站缓存队列时延要求及端站缓存队列缓存量;端站缓存队列首包到达时刻为位于队首的业务数据包进入端站缓存队列的时刻。
在其中一个实施例中,上行调度信息包括上行调度时间段及端站缓存队列标识;
将对应上行调度信息的端站缓存队列的业务数据包上传至岸端中心站的步骤包括:
在上行调度时间段内,将对应端站缓存队列标识的端站缓存队列的业务数据包上传至岸端中心站。
一种从岸段中心站角度实施的船载卫星通信装置,包括:
获取状态信息模块,用于获取各船载端站的缓存队列状态信息;
资源分配模块,用于根据各缓存队列状态信息、对船载端站的各端站缓存队列分别进行资源分配,得到上行调度信息;
上行调度模块,用于向船载端站下发上行调度信息;上行调度信息用于指示船载端站上传对应端站缓存队列的业务数据包。
一种从岸端中心站角度实施的船载卫星通信装置,包括:
分配模块,用于根据岸端缓存队列状态信息、分别对岸端缓存队列进行资源分配,得到下行调度信息;
下行调度模块,用于将对应下行调度信息的岸端缓存队列的业务数据包,下发至相应的船载端站。
一种船载端站角度实施的船载卫星通信装置,包括:
接收模块,用于接收岸端中心站下发的上行调度信息;上行调度信息为各端站缓存队列经岸端中心站根据缓存队列状态信息进行资源分配得到;
上传模块,用于将对应上行调度信息的端站缓存队列的业务数据包,上传给岸端中心站。
一种岸端中心站,该岸端中心站用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤。
在其中一个实施例中,岸端中心站包括应用服务器;
应用服务器用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤。
一种船载端站,该船载端站用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
在其中一个实施例中,船载端站包括存储服务器;
存储服务器用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
一种船载卫星通信系统,包括岸端中心站以及连接岸端中心站的船载端站;
岸端中心站用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤;
船载端站用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
在其中一个实施例中,岸端中心站包括应用服务器;船载端站包括存储服务器;
应用服务器用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤;
存储服务器用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现各实施例中船载卫星通信方法的步骤。
上述技术方案的一个技术方案具有如下优点和有益效果:
根据缓存队列状态信息,分别对各端站缓存队列进行资源分配,以合理地对可推迟发送的各端站缓存队列的业务数据包进行调度,令各端站缓存队列的业务数据包的有序发送,有效避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为一个实施例中船载卫星通信方法的应用环境图;
图2为一个实施例中从岸端中心站角度实施的船载卫星通信方法的第一示意性流程示意图;
图3为一个实施例中从岸端中心站角度实施的船载卫星通信方法的第二示意性流程示意图;
图4为一个实施例中从岸端中心站角度实施的船载卫星通信方法的第三示意性流程示意图;
图5为一个实施例中从船载端站角度实施的船载卫星通信方法的第一示意性流程示意图;
图6为一个实施例中从船载端站角度实施的船载卫星通信方法的第二示意性流程示意图;
图7为一个具体的实例中从船载端站角度和岸端中心站角度实施的船载卫星通信方法的应用环境图;
图8为一个具体的实例中岸端中心站的结构框图;
图9为一个具体的实例中船载端站的结构框图;
图10为一个具体的实例中从船载端站角度和岸端中心站角度实施的船载卫星通信方法的上行业务数据发送具体步骤的流程示意图;
图11为一个具体的实例中从船载端站角度和岸端中心站角度实施的船载卫星通信方法的下行业务数据发送具体步骤的流程示意图;
图12为一个实施例中应用服务器的内部结构图;
图13为一个实施例中存储服务器的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
一般的船载卫星(宽带)通信系统,既可以实现船上与地面或船只之间建立通信联系及信息交换的功能,也可利用宽带传输能力实时传送标准图像及高清图像、语音、数据,还可实现宽带互联网的接入功能。船载卫星通信系统适用于渔政、边防、海防、军队、科考、海洋物探、石油、气象、渔业、海洋运输等行业用户,可实现点对点、点对多点、广播式网络通信、宽带网络接入等功能,通常采用“(卫星)船载端站+无线覆盖”的网络通信服务方式,即手机、电脑、自定义终端通过WIFI无线连接到船载端站,然后通过卫星链路接入所属的地面站群(岸端中心站),进一步接入到陆地接入网中,使得各类海事用户和航运公司可在岸基通过船载卫星宽带通信系统与海上船舶通过互联网、移动3G/4G网络、甚至专网的形式进行通信,实现视频、语音、信息、邮件、各种网络APP应用,满足船舶用户的日常应用,也丰富了船员们的海上日常生活。
由于船载卫星宽带通信系统采用卫星链路作为回传方式,而卫星链路具有带宽小,费用高,不稳定,船载端站用户数量多,用户业务分布呈现潮汐现象(有规律地在某段时间内业务量上升,在另一端时间内业务量下降)等特点,通常在业务繁忙期间,卫星链路带宽无法承载所有船端用户的业务需求,造成业务碰撞,数据包频繁丢弃重传超时,进一步增加了网络的开销,加重了链路的负荷。
而本申请通过分别对各端站缓存队列进行资源分配,以合理地对可推迟发送的各端站缓存队列的业务数据包进行调度,令各端站缓存队列的业务数据包的有序发送,有效避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
本申请提供的船载卫星通信方法,可以应用于如图1所示的应用环境中。其中,岸端中心站102与船载端站104通过卫星链路进行通信,船载端站104与船上的各用户终端106连接。船载端站104可以将各用户终端106上传的业务数据包保存到各端站缓存队列中,并可以根据上行调度信息上传对应的端站缓存队列的业务数据包至岸端中心站102;岸端中心站102可以对船载端站104的各端站缓存队列分别进行资源分配,得到上行调度信息;岸端中心站102针对用户终端106生成的业务数据包可以保存在各岸端缓存队列中,并可以对各岸端缓存队列进行资源分配,得到下行调度信息;岸端中心站102可以根据下行调度信息,将对应的岸端缓存队列中的业务数据包下发到船载端站104中;船载端站104将岸端中心站102下发的业务数据包转发给用户终端106。其中,用户终端106可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在一个实施例中,如图2所示,提供了一种船载卫星通信方法,以该方法应用于图1的岸端中心站为例进行说明,包括以下步骤:
步骤202,获取各船载端站的缓存队列状态信息;
其中,端站缓存队列状态信息可以包括端站缓存队列首包到达时刻、端站缓存队列时延要求及端站缓存队列缓存量。端站缓存队列首包到达时刻为位于队首的业务数据包进入端站缓存队列的时刻。端站缓存队列时延要求与上一实施例中的时延要求相对应,也即端站缓存队列时延要求是端站缓存队列的时延要求。端站缓存队列缓存量为端站缓存队列缓存的所有业务数据包的大小。
步骤204,根据各缓存队列状态信息、对船载端站的各端站缓存队列分别进行资源分配,得到上行调度信息;
具体而言,根据端站缓存队列状态信息对端站缓存队列进行资源分配,得到上行调度信息的步骤可以包括:
根据各端站缓存队列剩余时延,确认各端站缓存队列传输时长的时序,得到各端站缓存队列传输时段;端站缓存队列剩余时延为端站缓存队列时延要求与端站缓存队列等待时延的差值;端站缓存队列等待时延为端站缓存队列资源分配时刻与端站缓存队列首包到达时刻的时差;端站缓存队列传输时长为端站缓存队列缓存量与卫星通信速率的比;
对端站缓存队列传输时段进行划分,得到各上行调度时间段;
基于端站缓存队列标识以及上行调度时间段,得到上行调度信息。
其中,上行调度时间段和端站缓存队列标识用于指示船载端站在上行调度时间段内上传对应端站缓存队列标识的端站缓存队列的业务数据包。
需要说明的是,端站缓存队列剩余时延的大小,决定了端站缓存队列的时延要求程度,端站缓存队列剩余时延越小,调度的优先级越高,则对应的端站缓存队列传输时长的时序越靠前,进而对应的端站缓存队列传输时段越早,从而越早对对应的端站缓存队列的业务数据包进行调度上传。
具体地,确认各端站缓存队列传输时长的时序时,也需要确定上传起始时刻,各端站缓存队列传输时长根据已确认的时序从上传起始时刻开始往后排列,得到各上行调度时间段。
步骤206,向船载端站下发上行调度信息;上行调度信息用于指示船载端站上传对应端站缓存队列的业务数据包。
其中,上行调度信息为对船载端站的各端站缓存队列分别进行资源分配得到,且上行调度信息采用UDP(User Datagram Protocol,用户数据报协议)方式进行封装。端站缓存队列为QoS(Quality of Service,服务质量)缓存队列。
具体地,上行调度信息用于指示船载端站上传对应端站缓存队列的业务数据包。岸端中心站还能够接收到船载端站上传的表示上行调度信息是否传输错误的上行调度信息确认应答,若根据上行调度信息确认应答确认出现传输错误,则需要重传上行调度信息,故在接收到上行调度信息确认应答前,需要对上行调度信息进行缓存。
在下发时,岸端中心站可以将上行调度信息放入优先级等级最高的岸端缓存队列,以确保上行调度信息能够及时下发给船载端站,避免调度失败。
需要说明的是,岸端缓存队列和端站缓存队列的优先级等级及这两个队列的时延要求可以包括以下七类:优先级等级为1,一般用于大文件传输,时延要求可为12小时;优先级等级为2,一般用于缓存视频传输,时延要求可为4小时;3、优先级等级为3,一般用于微信、QQ及即时通信类传输,时延要求可为300秒;优先级等级为4,一般用于图片传输,时延要求可为1小时;优先级等级为5,一般用于文本信息传输,时延要求可为分钟级别;优先级等级为6,一般用于IP(VoIP,Voiceover Internet Protocol,宽带电话)电话传输,时延要求可为100毫秒;优先级等级为7,一般用于系统指令传输,时延要求可为0秒。数字越大,优先级等级越高。
进一步的,优先级等级为7的岸端缓存队列和端站缓存队列不参与资源分配过程,应立刻发送它们的业务数据包。
其中,时延要求为岸端缓存队列和端站缓存队列中的业务数据包可以推迟发送的等待时延。岸端缓存队列为QoS缓存队列。
上述船载通信方法中,通过分别对各端站缓存队列进行资源分配,以合理地对可推迟发送的各端站缓存队列的业务数据包进行调度,令各端站缓存队列的业务数据包的有序上传,有效避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
在一个实施例中,如图3所示,提供了一种船载卫星通信方法,以该方法应用于图1的岸端中心站为例进行说明,包括以下步骤:
步骤S302,接收各船载端站上传的状态报告报文。
其中,状态报告报文包含端站缓存队列状态信息,并采用UDP方式封装,且状态报告报文的寻址方式按照所分配的IP(Internet Protocol,网络协议)地址和端口号进行。
具体地,接收状态报告报文时,可以向船载端站反馈表示状态报告报文是否正确接收的确认应答,若出现传输错误,确认应答能够指示船载端站重传状态报告报文。进一步的,若重传次数超过限制或重传超时后还是出现传输错误,停止反馈确认应答。
当确认本次状态报告报文传输正确时,利用本次接收的状态报告报文更新上一次接收的状态报告报文。
步骤S304,根据端站缓存队列状态信息对端站缓存队列进行资源分配,得到上行调度信息。
其中,端站缓存队列状态信息可以包括端站缓存队列首包到达时刻、端站缓存队列时延要求及端站缓存队列缓存量。端站缓存队列首包到达时刻为位于队首的业务数据包进入端站缓存队列的时刻。端站缓存队列时延要求与上一实施例中的时延要求相对应,也即端站缓存队列时延要求是端站缓存队列的时延要求。端站缓存队列缓存量为端站缓存队列缓存的所有业务数据包的大小。
具体地,周期性执行步骤S304。
步骤S306,向船载端站下发上行调度信息。
在一个具体的实施例中,向船载端站传输上行调度信息的步骤包括:
在下发时刻,将上行调度信息传输给船载端站。
其中,下发时刻早于上行调度时间段的起始时刻。
对于与上一实施例相同的特征,这里不再赘述。
上述船载通信方法中,通过分别对各端站缓存队列进行资源分配,以合理地对可推迟发送的各端站缓存队列的业务数据包进行调度,令各端站缓存队列的业务数据包的有序上传,有效避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
另外,为了确保各船载端站之间资源分配的同步性,在下发时刻将上行调度信息传输给船载端站,而不是同时将多个上行调度信息传输给各船载端站。
在一个实施例中,如图4所示,提供了一种船载卫星通信方法,以该方法应用于图1的岸端中心站为例进行说明,包括以下步骤:
步骤S402,根据岸端缓存队列状态信息对岸端缓存队列进行资源分配,得到下行调度信息。
其中,岸端缓存队列状态信息可以包括岸端缓存队列首包到达时刻、岸端缓存队列时延要求及岸端缓存队列缓存量;岸端缓存队列首包到达时刻为位于队首的业务数据包进入岸端缓存队列的时刻。岸端缓存队列时延要求与上一实施例中的时延要求相对应,也即岸端缓存队列时延要求是岸端缓存队列的时延要求。岸端缓存队列缓存量为岸端缓存队列缓存的所有业务数据包的大小。
步骤S404,将对应下行调度信息的岸端缓存队列的业务数据包,下发至相应的船载端站。
其中,下行调度信息为分别对各岸端缓存队列进行资源分配得到的,且采用UDP方式封装。
具体地,岸端中心站还能够接收到船载端站上传的表示下行调度信息是否传输错误的下行调度信息确认应答,若根据下行调度信息确认应答确认出现传输错误,则需要重传下行调度信息,故在接收到下行调度信息确认应答前,需要对下行调度信息进行缓存。
对于与上述各实施例相同的特征,这里不再赘述。
上述船载通信方法中,通过下行调度信息下发岸端缓存队列的业务数据包,以便合理地对可推迟发送的各岸端缓存队列的业务数据包进行调度,令各岸端缓存队列的业务数据包的有序下发,有效避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
在一个具体的实施例中,下行调度信息包括下行调度时间段和岸端缓存队列标识;
将对应下行调度信息的岸端缓存队列的业务数据包,下发至相应的船载端站的步骤包括:
在下行调度时间段内,将对应岸端缓存队列标识的岸端缓存队列的业务数据包下发至船载端站。
在一个具体的实施例中,在调度时刻,将下行调度信息下发给相应的船载端站。
其中,调度时刻早于下行调度时间段的起始时刻。
具体地,在下发时,岸端中心站可以将下行调度信息放入优先级等级最高的岸端缓存队列,以确保下行调度信息能够及时下发给船载端站。
需要说明的是,船载端站接收到下行调度信息后,便可在不需要解码业务数据包的情况下,方便获知岸端中心站何时下发业务数据包,以及下发的业务数据包对应的岸端缓存队列,进而提高组包效率。
在一个具体的实施例中,根据岸端缓存队列状态信息对岸端缓存队列进行资源分配,得到下行调度信息的步骤包括:
根据各岸端缓存队列剩余时延,确认各岸端缓存队列传输时长的时序,得到各岸端缓存队列传输时段;岸端缓存队列剩余时延为岸端缓存队列时延要求与岸端缓存队列等待时延的差;岸端缓存队列等待时延为岸端缓存队列资源分配时刻与岸端缓存队列首包到达时刻的差;岸端缓存队列传输时长为岸端缓存队列缓存量与卫星通信速率的比;
对岸端缓存队列传输时段进行划分,得到各下行调度时间段;
基于岸端缓存队列标识以及下行调度时间段,得到下行调度信息。
需要说明的是,岸端缓存队列剩余时延的大小,决定了岸端缓存队列的时延要求程度,岸端缓存队列剩余时延越小,调度的优先级越高,则对应的岸端缓存队列传输时长的时序越靠前,进而对应的岸端缓存队列传输时段越早,从而越早对对应的岸端缓存队列的业务数据包进行调度下发。
具体地,确认各岸端缓存队列传输时长的时序时,也需要确定下发起始时刻,各岸端缓存队列传输时长根据已确认的时序从下发起始时刻开始往后排列,得到各下行调度时间段。
具体地,周期性执行上述资源分配的步骤。
对于与上述各实施例相同的特征,这里不再赘述。
上述船载通信方法中,通过下行调度信息下发岸端缓存队列的业务数据包,以便合理地对可推迟发送的各岸端缓存队列的业务数据包进行调度,令各岸端缓存队列的业务数据包的有序下发,有效避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
另外,将下行调度信息在调度时刻传输给船载端站,有利于船载端站在不需要对业务数据包进行的情况下,确认业务数据包的发送时间以及下发的业务数据包所属的岸端缓存队列,便于船载端站对业务数据包进行组包等处理,提高效率。
在一个实施例中,如图5所示,提供了一种船载卫星通信方法,以该方法应用于图1的船载终端为例进行说明,包括以下步骤:
步骤S502,接收岸端中心站下发的上行调度信息。
其中,上行调度信息为各端站缓存队列经岸端中心站根据缓存队列状态信息进行资源分配得到。
具体地,在接收上行调度信息时,向岸端中心站上传表示上行调度信息是否传输错误的上行调度信息确认应答,若出现上行调度信息传输错误,则接收岸端中心站基于上行调度信息确认应答重传的上行调度信息。
步骤S504,将对应上行调度信息的端站缓存队列的业务数据包,上传给岸端中心站。
在一个具体的实施例中,还包括步骤:
上传状态报告报文至岸端中心站;状态报告报文包括端站缓存队列状态信息;端站缓存队列状态信息包括端站缓存队列首包到达时刻、端站缓存队列时延要求及端站缓存队列缓存量;端站缓存队列首包到达时刻为位于队首的业务数据包进入端站缓存队列的时刻。
具体地,周期性上传状态报告报文,且上传状态报告报文的周期与上述实施例中步骤S304的执行周期相匹配。
在一个具体的实施例中,上行调度信息包括上行调度时间段及端站缓存队列标识;
将对应上行调度信息的端站缓存队列的业务数据包上传至岸端中心站的步骤包括:
在上行调度时间段内,将对应端站缓存队列标识的端站缓存队列的业务数据包上传至岸端中心站。
对于与上述各实施例相同的特征,这里不再赘述。
上述船载通信方法中,通过上行调度信息上传端站缓存队列的业务数据包,以便合理地对可推迟发送的各端站缓存队列的业务数据包进行调度,令各端站缓存队列的业务数据包的有序上传,有效避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
在一个实施例中,如图6所示,提供了一种船载卫星通信方法,以该方法应用于图1的船载终端为例进行说明,包括以下步骤:
步骤S602,接收岸端中心站下发的、对应下行调度信息的岸端缓存队列的业务数据包。
其中,下行调度信息为各所述岸端缓存队列经岸端中心站进行资源分配得到。
在一个具体的实施例中,还包括步骤:
步骤S604,接收岸端中心站下发的下行调度信息;
步骤S606,根据下行调度信息,确认岸端中心站下发的业务数据包所对应的岸端缓存队列。
具体地,下行调度信息为岸端中心站对各岸端缓存队列分别进行资源分配得到。在接收下行调度信息时,向岸端中心站上传表示下行调度信息是否传输错误的下行调度信息确认应答,若出现下行调度信息传输错误,则接收岸端中心站基于下行调度信息确认应答重传的下行调度信息。
需要说明的是,船载端站接收到下行调度信息后,便可在不需要解码业务数据包的情况下,方便获知岸端中心站何时下发业务数据包,以及下发的业务数据包对应的岸端缓存队列,进而提高组包效率,避免业务堆积碰撞造成的丢包、超时现象,减轻卫星链路的负荷,提升用户业务体验。
对于与上述各实施例相同的特征,这里不再赘述。
上述船载通信方法中,接收岸端缓存队列的业务数据包,还通过下行调度信息获知岸端中心站下发业务数据包的时间以及下发的业务数据包对应的岸端缓存队列,提高了对业务数据包进行组包等处理的能力,节省处理时间。
下面结合一个具体的实例对本申请进行阐述,提供一种从岸端中心站和船载终端两个角度实施的船载卫星通信方法,应用环境如图7所示,结合岸端中心站和船载终端两个角度说明,其中如图8所示的岸端中心站包括应用服务器以及连接应用服务器的Modem(调制解调器),应用服务器包括卫星带宽资源模块;如图9所示的船载终端包括依次连接的存储服务器、网桥及Modem,存储服务器包括状态上报模块。
存储服务器实现对APP上行数据的缓存。卫星带宽资源模块针对上下行的带宽资源进行分配,保证在传输过程中不出现业务碰撞造成丢包出现,优先保证时延要求较高(优先级等级较高)的队列进行数据发送,对时延要求较低(优先级等级较低)的队列进行缓存等待,有空余资源时再进行资源分配,应用服务器和存储服务器根据资源分配结果,分别转发对应队列的业务数据至Modem,并由Modem通过卫星链路转发至对端站点的Modem。其中,存储服务器的数据经过网桥到达Modem。
如图10所示,上行业务数据发送具体步骤如下:
S1101、船上的用户终端按照自身行为使用APP(Application,应用程序),APP产生业务数据包传到船载端站的存储服务器,根据时延要求,将业务数据包判断为不同类型业务,将其存入到存储服务器中对应的QoS缓存队列(端站缓存队列)中,QoS缓存队列包括以下7类:1、优先级等级=1,大文件;2、优先级等级=2,缓存视频;3、优先级等级=3,微信、QQ、即时通信类;4、优先级等级=4,图片;5、优先级等级=5,文本信息;6、优先级等级=6,IP电话;7、优先级等级=7,系统指令;数字越大,等级越高,优先级越高,对时延要求也越高,如优先级等级=1,可延迟12小时发送,优先级等级=2,可延迟4小时发送,而优先级等级=3,可能延迟300s发送,优先级等级=4,可能延迟1小时发送,优先级等级=5,可能延迟若干分钟发送,优先级等级=6,可能延迟100毫秒发送,优先级等级=7,必须立刻发送;
S1102、存储服务器记录每个QoS队列(端站缓存队列)中,每个包(业务数据包)的到达时间戳,其中首包表示该队列队首的包。由于每个包都有可能成为首包,故需要记录每个包的到达时间戳;
S1103、周期性状态报告上报时间到达,组成每个QoS队列(端站缓存队列)的周期性的状态报告报文,包括1)QoS队列的首包时间戳(端站缓存队列首包到达时刻),2)每个QoS队列的缓存大小(端站缓存队列缓存量),3)QoS队列的时延要求(端站缓存队列时延要求);
S1104、将状态报告报文采用UDP方式封装,寻址方式按照所分配的IP地址和端口号进行;
S1105、转发状态报告UDP包(采用UDP方式封装的状态报告报文)时,将其放入优先级最高的队列(端站缓存队列)中进行转发,保障该包转发时的及时性;
S1106、应用服务器收集所有船载端站上报的状态报告报文,并进行维护更新,针对每个船载端站仅保存最新上报的状态报告报文;
S1107、上行调度周期到达,岸端中心站的调度器(卫星带宽资源模块)根据所维护更新的每个船载端站每个QoS队列(端站缓存队列)的状态信息,进行资源调度,得到上行调度信息。需要注意的是,为了保证应用服务器和各船载端站之间分配资源的同步性,在上行调度信息中不下发开始时间信息,由应用服务器通过不同船载端站在不同时刻(下发时刻)下发上行调度信息来控制各个船载端站的资源分配开始时间,即应用服务器根据为每个端站分配的时隙资源的开始时刻,在该时刻(上行调度时间段的起始时刻)提前一定的时刻将上行调度信息下发,上行调度信息中只存放持续时间(上行调度时间段)以及端站缓存队列标识,存储服务器收到上行调度信息后,立刻开始进行数据调度转发,转发持续时间按照上行调度信息中的取值;
S1108、船载端站根据收到的上行调度信息,按照分配的时隙资源从存储服务器中转发对应QoS队列数据到网桥及Modem,由Modem经过卫星链路转发至岸端中心站的Modem及应用服务器;
S1109、船载端站状态报告上报周期(周期性状态报告上报时间到达)到达,跳至步骤S1103进行循环。
如图11所示,下行业务数据发送具体步骤如下:
S1201、应用服务器产生对应船载端站对应用户终端的APP的业务数据包,并根据时延要求,将产生的业务数据包判断为不同类型业务,并将其存入到应用服务器中对应端站的QoS缓存队列中(岸端缓存队列);
S1202、应用服务器记录每个QoS队列(岸端缓存队列)中,每个队列的首包到达时间戳,其中首包表示该队列队首的包。由于每个包都有可能成为首包,故需要记录每个包的到达时间戳,应用服务器还记录每个QoS队列(岸端缓存队列)的缓存大小,并进行维护更新,针对每个端站的每个QoS队列(岸端缓存队列)仅保存最新的记录,应用服务器还记录每个QoS队列(岸端缓存队列)的时延要求;
S1203、下行调度周期到达,岸端中心站的调度器(卫星带宽资源模块)根据所维护的每个端站每个QoS队列(岸端缓存队列)的状态信息,进行资源调度,得到下行调度信息,保障出现业务碰撞时,时延要求程度较低的业务进行缓存等待,优先转发时延要求程度较高的QoS队列(岸端缓存队列)。
S1204、应用服务器根据下行调度信息,按照分配的时隙资源从应用服务器中转发对应QoS队列(岸端缓存队列)数据Modem,由Modem经过卫星链路转发至各船载端站的Modem、网桥及存储服务器。
S1205、调度周期到达,跳至步骤1203进行循环
时延要求程度(端站缓存队列剩余时延及岸端缓存队列剩余时延),即根据该QoS队列(端站缓存队列及岸端缓存队列)中数据包等待的时间,计算距离QoS等级所要求的时延之间的差值,该值越小,表示其时延要求程度越高,要尽快在所要求的时延到达之前转发该数据包,故其优先级也更高。
在一个具体的示例中,状态报告报文采用周期上报方式,上报内容包括:1、存储服务器每个缓存队列的缓存大小(端站缓存队列缓存量),2、每个缓存队列的QoS队列等级(端站缓存队列时延要求),3、每个缓存队列,其缓存队列中的第一个包的到达时间(端站缓存队列首包到达时刻);状态报告报文的上报方式为生成上报数据包后,采用UDP的方式封装,放入QoS优先级最高的队列中进行转发。
在一个具体的示例中,状态报告的更新与维护方法如下:
应用服务器针对每个船载端站,维护每一条状态报告,收到最新的状态报告报文后对状态报告进行更新,若完成相应调度,则根据调度后的数据量,对状态报告进行更新。
一种具体实施方法中,状态报告缓存与重传方法如下:
由于状态报告报文采用UDP模式进行封装,且在岸端中心站会进行确认应答,若出现传输错误,船载端站会对状态报告报文进行重传,故在收到确认应答之前,需对状态报告报文进行缓存。
状态报告报文的重传机制,通过设置超时定时器进行超时重传。进一步的,限制状态报告报文的重传次数。
在一个具体的示例中,上行调度周期与上报状态报告报文的周期相匹配。
在一个具体的示例中,上行调度信息和下行调度信息采用UDP模式进行封装,并放入优先级最高的队列中进行优先转发,应用服务器会尽快优先转发上行调度信息和下行调度信息。
在一个具体的示例中,调度信息缓存和重传方法如下:由于上行调度信息和下行调度信息采用UDP模式进行封装,且在船载端站处会进行确认应答,若出现传输错误,岸端中心站会对上行调度信息和下行调度信息进行重传,故在收到确认应答之前,需对上行调度信息和下行调度信息进行缓存。
应该理解的是,虽然图2至图6、图10及图11的流程图的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至图6、图10及图11的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,提供了一种从岸端中心站角度实施的船载卫星通信装置,包括:
获取状态信息模块,用于获取各船载端站的缓存队列状态信息;
资源分配模块,用于根据各缓存队列状态信息、对船载端站的各端站缓存队列分别进行资源分配,得到上行调度信息;
上行调度模块,用于向船载端站下发上行调度信息;上行调度信息用于指示船载端站上传对应端站缓存队列的业务数据包。
在一个具体的示例中,获取状态信息模块,用于接收各船载端站上传的状态报告报文;状态报告报文包含端站缓存队列状态信息。
在一个具体的示例中,端站缓存队列状态信息包括端站缓存队列首包到达时刻、端站缓存队列时延要求及端站缓存队列缓存量;端站缓存队列首包到达时刻为位于队首的业务数据包进入端站缓存队列的时刻;
上行资源分配模块包括:
端站缓存队列传输时段模块,用于根据各端站缓存队列剩余时延,确认各端站缓存队列传输时长的时序,得到各端站缓存队列传输时段;端站缓存队列剩余时延为端站缓存队列时延要求与端站缓存队列等待时延的差值;端站缓存队列等待时延为端站缓存队列资源分配时刻与端站缓存队列首包到达时刻的时差;端站缓存队列传输时长为端站缓存队列缓存量与卫星通信速率的比;
端站缓存队列传输时段划分模块,用于对端站缓存队列传输时段进行划分,得到各上行调度时间段;
上行调度信息得到模块,用于基于端站缓存队列标识以及上行调度时间段,得到上行调度信息。
在一个具体的示例中,上行调度模块用于在下发时刻,将上行调度信息传输给船载端站;下发时刻早于上行调度时间段的起始时刻。
在一个实施例中,提供了一种从岸端中心站角度实施的船载卫星通信装置,包括:
分配模块,用于根据岸端缓存队列状态信息、分别对岸端缓存队列进行资源分配,得到下行调度信息;
下行调度模块,用于将对应下行调度信息的岸端缓存队列的业务数据包,下发至相应的船载端站。
在一个具体的示例中,岸端缓存队列状态信息包括岸端缓存队列首包到达时刻、岸端缓存队列时延要求及岸端缓存队列缓存量;岸端缓存队列首包到达时刻为位于队首的业务数据包进入岸端缓存队列的时刻。
分配模块包括:
岸端缓存队列传输时段模块,用于根据各岸端缓存队列剩余时延,确认各岸端缓存队列传输时长的时序,得到各岸端缓存队列传输时段;岸端缓存队列剩余时延为岸端缓存队列时延要求与岸端缓存队列等待时延的差;岸端缓存队列等待时延为岸端缓存队列资源分配时刻与岸端缓存队列首包到达时刻的差;岸端缓存队列传输时长为岸端缓存队列缓存量与卫星通信速率的比;
岸端缓存队列传输时段划分模块,用于对岸端缓存队列传输时段进行划分,得到各下行调度时间段;
下行调度信息得到模块,用于基于岸端缓存队列标识以及下行调度时间段,得到下行调度信息。
在一个具体的示例中,下行调度信息包括下行调度时间段和岸端缓存队列标识;
下行调度模块用于在下行调度时间段内,将对应岸端缓存队列标识的岸端缓存队列的业务数据包下发至船载端站。
在一个具体的示例中,还包括:
下行调度信息下发模块,用于将下行调度信息下发给相应的船载端站;调度时刻早于下行调度时间段的起始时刻。
在一个实施例中,提供了一种从船载端站角度实施的船载卫星通信装置,包括:
接收模块,用于接收岸端中心站下发的上行调度信息;上行调度信息为各端站缓存队列经岸端中心站根据缓存队列状态信息进行资源分配得到;
上传模块,用于将对应上行调度信息的端站缓存队列的业务数据包,上传给岸端中心站。
在其中一个示例中,还包括:
状态报告报文上传模块,用于上传状态报告报文至岸端中心站;状态报告报文包括端站缓存队列状态信息;端站缓存队列状态信息包括端站缓存队列首包到达时刻、端站缓存队列时延要求及端站缓存队列缓存量;端站缓存队列首包到达时刻为位于队首的业务数据包进入端站缓存队列的时刻。
在其中一个示例中,上行调度信息包括上行调度时间段及端站缓存队列标识;
上传模块用于接收岸端中心站下发的上行调度信息;在上行调度时间段内,将对应端站缓存队列标识的端站缓存队列的业务数据包上传至岸端中心站。
在一个实施例中,提供了一种从船载端站角度实施的船载卫星通信装置,包括:
接收模块,用于接收岸端中心站下发的业务数据包。
在其中一个示例中,还包括:
业务数据包确认模块,用于接收岸端中心站下发的下行调度信息;根据下行调度信息,确认岸端中心站下发的业务数据包所对应的岸端缓存队列;下行调度信息为岸端中心站对各岸端缓存队列分别进行资源分配得到。
关于船载卫星通信装置(从岸端中心站角度实施的船载卫星通信装置或从船载端站角度实施的船载卫星通信装置)的具体限定可以参见上文中对于船载卫星通信方法(从岸端中心站角度实施的船载卫星通信方法或从船载端站角度实施的船载卫星通信方法)的限定,在此不再赘述。上述船载卫星通信装置的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备的处理器中,也可以以软件形式存储于计算机设备的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种应用服务器,其内部结构图可以如图12所示。该应用服务器包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该应用服务器的处理器用于提供计算和控制能力。该应用服务器的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质的操作系统和计算机程序的运行提供环境。该应用服务器的数据库用于存储状态报告、岸端缓存队列状态信息、上行调度信息、下行调度信息及业务数据包等数据。该应用服务器的网络接口用于与外部的用户终端通过网络连接通信。该计算机程序被处理器执行时以实现一种从岸端中心站角度实施的船载卫星通信方法。
在一个实施例中,提供了一种存储服务器,其内部结构图可以如图13所示。该存储服务器包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该存储服务器的处理器用于提供计算和控制能力。该存储服务器的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质的操作系统和计算机程序的运行提供环境。该存储服务器的数据库用于存储状态报告、上行调度信息、下行调度信息及业务数据包等数据。该存储服务器的网络接口用于与外部的用户终端通过网络连接通信。该计算机程序被处理器执行时以实现一种从船载端站角度实施的船载卫星通信方法。
本领域技术人员可以理解,图12和图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的应用服务器和存储服务器的限定,具体的应用服务器和存储服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种岸端中心站,该岸端中心站用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤。
在一个具体的示例中,岸端中心站包括应用服务器;
应用服务器用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤。
在一个实施例中,提供了一种船载端站,该船载端站用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
在一个具体的示例中,船载端站包括存储服务器;
存储服务器用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
在一个实施例中,提供了一种船载卫星通信系统,包括岸端中心站以及连接岸端中心站的船载端站;
岸端中心站用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤;
船载端站用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
在一个具体的示例中,岸端中心站包括应用服务器;船载端站包括存储服务器;
应用服务器用于执行各实施例中从岸端中心站角度实施的船载卫星通信方法的步骤;
存储服务器用于执行各实施例中从船载端站角度实施的船载卫星通信方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现各实施例中船载卫星通信方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。