IEEE 1588PTP协议借鉴了NTP技术,具有容易配置·、快速收敛以及对网络带宽和资源消耗少等特点。IEEE1588标准的全称是“网络测量和控制系统的精密时钟同步协议标准(IEEE 1588 Precision Clock Synchronization Protocol)”,简称PTP(Precision Timing Protocol),它的主要原理是通过一个同步信号周期性的对网络中所有节点的时钟进行校正同步,可以使基于以太网的分布式系统达到精确同步,IEEE 1588PTP时钟同步技术也可以应用于任何组播网络中。
IEEE 1588将整个网络内的时钟分为两种,即普通时钟(Ordinary Clock,OC)和边界时钟(Boundary Clock,BC),只有一个PTP通信端口的时钟是普通时钟,有一个以上PTP通信端口的时钟是边界时钟,每个PTP端口提供独立的PTP通信。其中,边界时钟通常用在确定性较差的网络设备(如交换机和路由器)上。从通信关系上又可把时钟分为主时钟和从时钟,理论上任何时钟都能实现主时钟和从时钟的功能,但一个PTP通信子网内只能有一个主时钟。整个系统中的最优时钟为最高级时钟GMC(Grandmaster Clock),有着最好的稳定性、精确性、确定性等。根据各节点上时钟的精度和级别以及UTC(通用协调时间)的可追溯性等特性,由最佳主时钟算法(Best Master Clock)来自动选择各子网内的主时钟;在只有一个子网的系统中,主时钟就是最高级时钟GMC。每个系统只有一个GMC,且每个子网内只有一个主时钟,从时钟与主时钟保持同步。图1所示的是一个典型的主时钟、从时钟关系示意。
图1 主时钟、从时钟关系示意图
同步的基本原理包括时间发出和接收时间信息的记录,并且对每一条信息增加一个“时间戳”。有了时间记录,接收端就可以计算出自己在网络中的时钟误差和延时。为了管理这些信息,PTP协议定义了4种多点传送的报文类型和管理报文,包括同步报文(Sync),跟随报文(Follow_up),延迟请求报文(Delay_Req),延迟应答报文(Delay_Resp)。这些报文的交互顺序如图2所示。收到的信息回应是与时钟当前的状态有关的。同步报文是从主时钟周期性发出的(一般为每两秒一次),它包含了主时钟算法所需的时钟属性。总的来说同步报文包含了一个时间戳,精确地描述了数据包发出的预计时间。
iTS-900系列时间服务器(以下简称iTS-900或时钟或装置)利用GPS全球定位系统卫星信号,北斗卫星定位系统以及接收的IRIG-B基准信号,通过综合各输入信号及守时处理,向监测、控制、保护和故障记录等各种智能电子设备及系统提供精确的同步时间信号。iTS-900适用于变电站、发电厂、工业生产、轨道交通及大型场馆等需要精确对时的场合,特别是满足电力系统智能变电站中对同步系统高精度高可靠性的要求。
现在很多国外的联赛都会使用HLTV对比赛进行实况转播,你如果想看HLTV的现场转播,那么,你就学习一些基本的 *** 作了。
首先进入CS选择PLAY CS
然后选择ViewGame
选择ADDSERVER
SERVER的地址你可以去各大CS主题网站查找,或者直接去国外的网站,战队主页,都可以查询到
添加HLTV的地址
进入,可以选观看模式也可以直接使用空格键切换视角、观看模式,e键打开、切换、关闭小图视角。
鼠标左右键切换所要观看的队员。A、w、s、d控制位置。
在这里我简单介绍一下录制HLTV格式demo的方法
首先要在桌面上建立一个hltvexe的快捷方式
例如:
X:/sierra/Half-Life/hltvexe +connect611875587:27025 -port27020 +namePUNK
connect是指定HLTV连接
611875587:27025是指定连接的CS服务器地址,我用的是CCSK8#的服务器
-port27020指定HLTV端口为27020(别人可以进入你所建立的hltv服务器中观看,你的服务器地址为,你的IP:制定的端口例如我的
2181049771:27020)
+namePUNK指定观看者名字为PUNK(这是你在你所进入的服务器中的ID)
如果你所连接的cs服务器有密码的话,假设密码是123,那么你需要在
hltvexe所在的目录下找到hltvcfg文件,打开它,添加一行serverpassword123启动hltv服务器才能连进cs服务器。
保证你现在已经在联网状态,运行hltv在桌面上创立的快捷方式,可以看到如下画面
(左下角的那个是因为截图的快捷键导致的,这里可是不能输入中文的)
录制录像的命令和普通游戏一样
record录制文件名为_1的demo,他在你的/sierra/Half-Life/文件夹下
用stoprecord命令来结束demo的录制
几点说明
当你开始运行hltv以后,他会自动不断地连接你所选择的服务器,每三秒一次,直到连上为止。掉线也一样,他会自动将你得demo分段进行录制。
HLTV的核心就是hltvexe这个代理程序HLTV代理可以连接到某些特定的服务器上,搜集一切有关信息,然后将这些信息传播出去HLTV需要一个客户端以观战者的身份加入游戏来进行直播如果玩家使用LAN活着ISP这种不支持多点传送技术的连接协议的话,那么你可以通过HLTV来进行观战HLTV代理能够支持的客户端人数是由硬件配置和网络状况来决定,不同的HLTV代理之间也可以互相连接,从而使观战的玩家可以同时看到不同场次的比赛在所有的设置中,只有一个HLTV代理直接与游戏相连接,它被称为主代理主代理以观战者的角度来播放游戏和搜集并分析游戏中的有关信息,其它的HLTV代理(也称作转接代理)再通过与主代理相连接而形成一个播放网络,将游戏的实时信息传送到与它相连接的玩家转接代理不能延迟游戏或者转换播放视角,这些工作只能由主连接来完成只有主连接才被允许发出多点传送命令非常重要的一点是,每个代理都必须拥有自己的一个独立的多点传送组,否则不同的信号将可能互相干扰
HLTV将会把正在播放的游戏的信息传送给WON服务器,而玩家则可以通过内建于Half-Life里的观战功能来进行连接连接HLTV代理将与连接游戏服务器一样简单玩家还可以通过在命令界面输入""connect""命令来连接HLTV服务器如果HLTV正在使用多点传送技术播放,那么玩家将自动进入这个多点网络
目前HLTV代理可以使用如下命令:
connect-使用特定端口连接到某个服务器或者代理(默认27015)
disconnect-与服务器或者代理断开连接
quit-退出HLTV系统
exit-等同于quit
retry-重新与上次连接过的服务器或者代理连接
name-设定代理的名称
password-设定服务器密码
clients-列出所有进行播放的观战者的名称
kick-把观战者从代理中踢出
say-向所有观战者发送文本信息
chatmode-如果设定为0,观战者将无法交谈设定为1,则只有连接到同一代理的观战者可以互相交谈如果设定为2,则所有处于同一播放网络内的玩家可以互相交谈(主代理和转接代理都必须设定为2)
ping-测试与服务器特定端口之间的PING值(默认27015)
heartbeat-发送一个状态包到指定的WON主服务器
rcon-发送一个遥控命令到其它服务器/代理
rcon_address-发送遥控命令到特定地址
rcon_password-为遥控的服务器设定密码
proxypassowrd-重新确认输入的密码
rate-绑定服务器与代理之间的传输速率为N字节/秒
updaterate-每N秒钟服务器与代理之间进行一次更新
maxclientrate-设定观战客户端的最大连接速率
delay-设定从服务器传来的信息的延迟秒数,默认为30秒,以避免作弊最小设定为10秒
loop-如果回路设定为1,那么即便代理与服务器断开连接或者录像文件播放结束,所有与这个代理的连接用户将保持连接并重播上一个游戏录像
multicast-开始或者结束主代理上的多点传输
connectip-为多点传输组设定D级IP(默认234551:27025)
gameip-同上
fullupdateinterval-多点传输时,允许丢包连接客户端每隔N个未压缩帧包重新连接(默认每20帧)
cmdlist-列出所有设定的命令
logfile-开始/结束从hltvlog文件中读取的设定命令
status-打印所有活跃模式的信息
exec-运行cfg文件
developer-在高级模式中显示添加的状态信息
fakeloss-模拟丢包,n=可能的丢包单元(默认0
record-记录所有的游戏信息,使用文件名为filename1dem到filename99dem
playback-开始播放上一个录像(如果回路loop设定为1,则反复播放)
stop-停止录像文件的回放
按下回车键,程序将自动完成整个命令的输入所有在hltvcfg文件中设定好的命令语句将在游戏开始时自动运行
下边这些变量只能在命令行中输入:
-maxframes-设定最大的缓存帧数(默认240
-cachesize-帧缓存规格(默认32帧)
-port-设定观战客户端与HLTV代理的连接端口(默认2702
-maxclients-设定可连接到HLTV代理的最大客户端数目(默认128)
-comm-设定不同于woncommlst文件的服务器信息文件
-multicastttl-设定多点传输包的Time-To-Live数值
highpriority-设定HLTV代理为优先进程
-nomaster-HLTV代理不向WON服务器发送回馈信息
这些变量在运行过程中无法改变,因此他们不可以在设定文件中进行设定
所有的设定命令都可以在命令行中设定,用""+""号可以同时使用几个命令,例如:
hltvexe+connectlocalhost:27015-port27021+rate7000
Half-Life服务器可以设定sv_proxies,从而决定多少个代理允许连接如果HLTV代理要被禁止,把这个变量设定为0设定为1则准许主代理连接,其它数值仅供测试使用
由于Half-Life新版本加入了语音功能,因而可以实现某个客户对游戏进行实时评述而评述者必须与主代理连接,需要输入的命令如下:
commentator
这个密码与代理的RCON密码相同评述者可以跟进行游戏一样进行评述,而所有其它的观战者都可以同步听到声音如果观战者录下这个游戏的话,那么评述声音也会被记录在内
linux下HLTV服务器建设方法(也适合WIN2000)
WIN2000下建设HLTV服务器的方法网上有很多文章都做了很详细的介绍。在此暂略LINUX下建设HLTV服务器和建设CS服务器的方法基本上都一样只是配置文件的和执行文件不一样而已:HLTVCFG在LINUX下需要建启脚本。启动脚本的做法和LINUX下建CS服务器的脚本做法一样:
#/bin/bash
/hltv+connect19216801:27019-port27015-nomaster
以上是一个最简单HLTV脚本
HLTV的基本脚本如下:
hltv+connectlocalhost:port-port27020+rate4000-maxclients50
如果是局域网的话就是要加上
hltv+connectlocalhost:port-port27020+rate5000-maxclients50-nomaster""
现在详细的说明一下命令行:
现在详细的说明一下命令行:
connectip:port需要连接的服务器IP和端口号
ratex用户可用的最大带宽或者速率
-maxframes设置最小缓冲帧(默认是2400)
-portHLTV服务器的端口号
-maxclients可以连接到该服务器的最大人数(默认128)
-nomaster局域网用
现在说HLTVCFG命令
connect连接指定端口的服务器
disconnect断开服务器连接
quit退出
exit和QUIT一样
retry重新连接服务器
autoretry在每N秒连接服务器
name设置名字
password服务器密码
clients例表所有连接的用户ID
kick剔除
say向每个人说话
infotext设置游戏文本信息
rcon为另外的游戏设置远程控制
rcon_address设置远程控制目标
rcon_password设置远程控制密码
proxypasswordproxy的密码
clientpassword用户密码
rate每秒发送的字节大小
updaterate每秒的更新速率
maxclientrate设置每个用户的带宽大小
delay延迟时间(推荐为30S)
其他的可以参看README
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)