篇1:浅析Erlang分布的核心技术
Erlang系统在我看来有3个特性: 1.分布 2.多核心支持 3.fp, 这3个特性中分布我认为是erlang最强大的,从第一个版本就支持到现在,相对非常成熟,而多核心支持是这几年才加进去的。
erlang的分布系统做到了2点:
1.节点的位置无关性;
2.对用户分布式透明的。
具体体现就是node是靠名字识别的, 进程也是靠pid来识别。
分布系统就要实现节点间通讯,erlang也不列外。 erlang的节点通讯介质是可以替换的 目前官方版本支持tcp, ssl通讯。
可以用 -proto_dist xxxx来选择通道。 目前支持inet_ssl inet_tcp 用户很容易模仿这这2个通讯协议,写个自己的传输通道,就是要求这个通道是可靠的,不能丢失信息。
这几个实现防火墙友好:
{inet_dist_use_interface, ip_address}
//If the host of an Erlang node has several network interfaces,
//this parameter specifies which one to listen on.See inet(3) for the type definition of ip_address().
{inet_dist_listen_min, First}
See below.
{inet_dist_listen_max, Last}
Define the First..Last port range for the listener socket of a distributed Erlang node.
erlang的内核里面和分布相关的erl模块主要有net_kernel inet_tcp_dist inet_ssl_dist inet_tcp dist_util erlang(trap send/link等语义)。
当用户运行erl -sname xxxxx启动erlang系统的时候 kernel模块就会启动net_kernel和epmd模块。
epmd的作用是提供一个node名称到监听地址端口的映射。epmd值守在知名端口4369上.
net_kernel会启动proto_dist比如说inet_tcp_dist监听端口,同时把端口报到epmd.
这时候erts就准备好了节点通讯。
这时候另外一个节点要和我们通讯的时候,首先要连接,流程大概是这样的:
1.根据节点名找到节点地址。
2.查询节点的4369端口,也就是epmd,向它要节点对应的inet_tcp_dist监听的端口。
3.发起连接, 握手,cookie认证,如果未授权就失败。
4.记录节点名称和响应的信息。
所以节点要正常通讯要考虑到firewall和nat的影响,以及cookie正常。
。
net_kernel要节点的可用性, 会定期发tick消息坚持节点的可达。对端节点也会主动发送nodeup,nodeup等消息,协助维护。
net_ticktime = TickTime
Specifies the net_kernel tick time.TickTime is given in seconds.Once every TickTime/4second,all connected nodes are ticked (if anything else has been written to a node) and if
nothing has been received from another node within the last four (4) tick times that node is
considered to be down.This ensures that nodes which arenot responding, for reasons such as
hardware errors, are considered to be down.
节点有2种类型可见的和不可见的,
erlang节点是可见的, c_interface写的节点不可见,因为c模块提供的节点能力有限。
erlang进程见通讯可以通过 1.pid 2.进程名称 来进行。 erlang系统很大的威力就在用elang实现了名称和pid的全局性维护。也就是说erlang做了个相当复杂的模块来解决名称失效 重复 查询功能。正常情况下名称是全局性的,也就是erlang的节点是全联通的,可以通过来调整。
auto_connect = Value
Specifies when no will be automatically connected.If this parameter is not specified,
a node is always automatically connected, e.g when a message is to be sent to that node.
Value is one of:
never
Connections are never automatically connected, they must be explicitly connected.See net_kernel(3).
once
Connections will be established automatically, but only once per node.If a node goes
down,
it must thereafter be explicitly connected.See net_kernel(3).
erlang实现透明进程通信的关键点在于pid的变换:
pid {X,Y,Z} 在发到网络的时候发出去的格式是{sysname, Y, Z}
所以互相知道对方的sysname, 而且sysname在dist_entry里保存,当对端收到dec_pid的时候,用peer sysname 的查到在自己dist_entry里面的索引,然后用这个index 来构造新的pid,即 {index, Y, Z}。
erlang给一个pid发消息的时候, 首先检查Pid是本地的还是外部的, 如果是外部的,则进行上面的变换,然后通过inet_tcp_dist模块,沿着inet_tcp, inet_drv这条线发送出去。
这条消息到达对端的时候 inet_drv首先受到这条消息, 照理说应该提交给inet_tcp, 然后再到inet_tcp_dist, net_kernel来处理.但是erlang为了效率的考虑做了个折中。在inet_drv里面driver_output*中检查消息的类型 如果是dist来的消息,就给erts_net_message来处理。
#define DOP_SEND 2
#define DOP_EXIT 3
#define DOP_UNLINK 4
#define DOP_NODE_LINK 5
#define DOP_REG_SEND 6
#define DOP_GROUP_LEADER 7
#define DOP_EXIT2 8
#define DOP_SEND_TT 12
#define DOP_EXIT_TT 13
#define DOP_REG_SEND_TT 16
#define DOP_EXIT2_TT 18
#define DOP_MONITOR_P 19
#define DOP_DEMONITOR_P 20
#define DOP_MONITOR_P_EXIT 21
如果是DOP_SEND的话,就把message放到变换好的进程的队列中去。
这个核心的功能,由beam的c模块(dist.c, erl_node_tables.c, io.c )和net_kernel模块一起实现。然后在这底层的原语上进一步实现了如rpc 这样的上层模块,进一步方便了用户.
篇2:EAP的核心技术
1. 管理员工问题、改进工作环境、咨询问题涉及有关员工业绩改进、培训和帮助,提供给所有的组织领导者(经理、工会会员、职员),同样,也包括对员工和其家属的有关EAP服务的教育。
2. 对问题提供保密及及时的察觉和评估服务,以保证员工的个人问题不会对他们的业绩表现有一负面影响,
3. 运用建设性的对质、激励和短期的干涉方法,EAP使得那些拥有影响到业绩表现的个人问题的员工,认识到个人问题和表现之间的关系。
4. 转介员工到一提供帮助的内部或外部机构,以获得医学咨询、治疗、帮助、转介和跟踪。
5. 为组织提供咨询,帮助它们与服务提供商建立和保持一有效的工作关系,例如那些提供治疗、管理和经营的服务提供商。
6. 在组织中进行咨询,使得政策的覆盖面涉及到了对酗酒、药物滥用、诸如精神和心理紊乱的医学或行为问题进行的医学治疗。随后,促使员工运用这一方面。
7. 确认EAP在组织和或个人表现中的有效性。
篇3:Erlang并发编程介绍
这篇文章主要介绍了Erlang并发编程介绍,本文讲解了进程的创建、进程间通信、超时设置以及给出代码实例,需要的朋友可以参考下
Erlang中的process――进程是轻量级的,并且进程间无共享,查了很多资料,似乎没人说清楚轻量级进程算是什么概念,继续查找中。。。闲话不提,进入并发编程的世界。本文算是学习笔记,也可以说是《Concurrent Programming in ERLANG》第五张的简略翻译。
1.进程的创建
进程是一种自包含的、分隔的计算单元,并与其他进程并发运行在系统中,在进程间并没有一个继承体系,当然,应用开发者可以设计这样一个继承体系。
进程的创建使用如下语法:
代码如下:
Pid = spawn(Module, FunctionName, ArgumentList)
spawn接受三个参数:模块名,函数名以及参数列表,并返回一个代表创建的进程的标识符(Pid)。
如果在一个已知进程Pid1中执行:
代码如下:
Pid2 = spawn(Mod, Func, Args)
那么,Pid2仅仅能被Pid1可见,Erlang系统的安全性就构建在限制进程扩展的基础上。
2.进程间通信
Erlang进程间的通信只能通过发送消息来实现,消息的发送使用!符号:
代码如下:
Pid ! Message
其中Pid是接受消息的进程标记符,Message就是消息。接受方和消息可以是任何的有效的Erlang结构,只要他们的结果返回的是进程标记符和消息。
消息的接受是使用receive关键字,语法如下:
代码如下:
receive
Message1 [when Guard1] ->
Actions1 ;
Message2 [when Guard2] ->
Actions2 ;
end
。。这一机制保证了没有消息会阻塞其他消息的到达。
。。
如何接受特定进程的消息呢?答案很简单,将发送方(sender)也附送在消息当中,接收方通过模式匹配决定是否接受,比如:
代码如下:
Pid ! {self,abc}
给进程Pid发送消息{self(),abc},利用self过程得到发送方作为消息发送。然后接收方:
代码如下:
receive
{Pid1,Msg} ->
end
通过模式匹配决定只有Pid1进程发送的消息才接受。
3.一些例子
仅说明下书中计数的进程例子,我添加了简单注释:
代码如下:
-module(counter).
-compile(export_all).
% start(),返回一个新进程,进程执行函数loop
start()->spawn(counter, loop,[0]).
% 调用此操作递增计数
increment(Counter)->
Counter!increament.
% 返回当前计数值
value(Counter)->
Counter!{self(),value},
receive
{Counter,Value}->
%返回给调用方
Value
end.
%停止计数
stop(Counter)->
Counter!{self(),stop}.
loop(Val)->
receive
%接受不同的消息,决定返回结果
increament->
loop(Val+1);
{From,value}->
From!{self(),Val},
loop(Val);
stop->
true;
%不是以上3种消息,就继续等待
Other->
loop(Val)
end.
调用方式:
代码如下:
1>Counter1=counter:start().
<0.30.0>
2>counter:value(Counter1).
0
3>counter:increment(Counter1).
increament
4>counter:value(Counter1).
1
基于进程的消息传递机制可以很容易地实现有限状态机(FSM),状态使用函数表示,而事件就是消息,
具体不再展开
4.超时设置
Erlang中的receive语法可以添加一个额外选项:timeout,类似:
代码如下:
receive
Message1 [when Guard1] ->
Actions1 ;
Message2 [when Guard2] ->
Actions2 ;
after
TimeOutExpr ->
ActionsT
end
after之后的TimeOutExpr表达式返回一个整数time(毫秒级别),时间的精确程度依赖于Erlang在操作系统或者硬件的实现。如果在time毫秒内,没有一个消息被选中,超时设置将生效,也就是ActionT将执行。time有两个特殊值:
1)infinity(无穷大),infinity是一个atom,指定了超时设置将永远不会被执行。
2) 。
超时的常见几个应用,比如挂起当前进程多少毫秒:
代码如下:
sleep(Time) ->
receive
after Time ->
true
end.
代码如下:
flush_buffer() ->
receive
AnyMessage ->
flush_buffer()
after 0 ->
true
end.
将当前进程永远挂起:
代码如下:
suspend() ->
receive
after
infinity ->
true
end.
超时也可以应用于实现定时器,比如下面这个例子,创建一个进程,这个进程将在设定时间后向自己发送消息:
代码如下:
-module(timer).
-export([timeout/2,cancel/1,timer/3]).
timeout(Time, Alarm) ->
spawn(timer, timer, [self(),Time,Alarm]).
cancel(Timer) ->
Timer ! {self(),cancel}.
timer(Pid, Time, Alarm) ->
receive
{Pid,cancel} ->
true
after Time ->
Pid ! Alarm
end.
5、注册进程
为了给进程发送消息,我们需要知道进程的Pid,但是在某些情况下:在一个很大系统里面有很多的全局servers,或者为了安全考虑需要隐藏进程Pid。为了达到可以发送消息给一个不知道Pid的进程的目的,我们提供了注册进程的办法,给进程们注册名字,这些名字必须是atom。
基本的调用形式:
代码如下:
register(Name, Pid)
代码如下:
unregister(Name)
取消Name与相应进程的对应关系。
代码如下:
whereis(Name)
返回Name所关联的进程的Pid,如果没有进程与之关联,就返回atom:undefined
代码如下:
registered()
返回当前注册的进程的名字列表
6.进程的优先级
设定进程的优先级可以使用BIFs:
代码如下:
process_flag(priority, Pri)
Pri可以是normal、low,默认都是normal
优先级高的进程将相对低的执行多一点。
7.进程组(process group)
所有的ERLANG进程都有一个Pid与一个他们共有的称为Group Leader相关联,当一个新的进程被创建的时候将被加入同一个进程组。最初的系统进程的Group Leader就是它自身,因此它也是所有被创建进程及子进程的Group Leader。这就意味着Erlang的进程被组织为一棵Tree,其中的根节点就是第一个被创建的进程。下面的BIFs被用于操纵进程组:
group_leader()
返回执行进程的Group Leader的Pid
group_leader(Leader, Pid)
设置进程Pid的Group Leader为进程的Leader
8.Erlang的进程模型很容易去构建Client-Server的模型,书中有一节专门讨论了这一点,着重强调了接口的设计以及抽象层次的隔离问题,不翻译了。
篇4:Erlang的一些编程技巧
guard
guard可以以逗号或者分号分隔,以逗号分隔表示最终的结果为各个guard的and结果,以分号则是只要任意一个guard为true则最终结果为true,
代码如下:
guard(X, Y) when not(X>Y), is_atom(X) ->
X + Y.
guard在list comprehension中可以筛选元素:
代码如下:
NewNodes = [Node || Node <- AllNodes, not gb_sets:is_member(Node, NewQueried)],
guard中不能使用自定义函数,因为guard应该保证没有副作用,但自定义函数无法保证这一点,所以erlang禁止在guard中使用自定义函数。
list comprehension
list comprehension是一个非常有用的语法特性,它可以用于构造一个新的list,可以用于将一种list映射到另一种list,可以筛选list元素。只要是跟list相关的操作,优先考虑用list comprehension来实现,将大大减少代码量。记住list comprehension的语法:
代码如下:
[Expression || Generators, Guards, Generators, ...]
timer
一定时间后向进程发送消息:
代码如下:
erlang:send_after(token_lifetime(), self(), renew_token),
一段时间后执行某个函数:
代码如下:
{ok, TRef} = timer:apply_interval(Interval, ?MODULE, announce, [self()]),
gb_trees/gb_set
pattern match
pattern match有太多作用了:
pattern match in case
case中判定多个值,比其使用逻辑运算符简洁多了:
代码如下:
A = 1, B = 2,
case {A, B} of
{_C, _C} ->true;
{_, _} ->false
end
pattern match to check data type
pattern match可以用于检测变量的类型,可以用于检测函数的返回值,就像C/C++中的assert一样,可以用于尽早检测出异常状态:
代码如下:
ping({_, _, _, _} = IP, Port) ->
ok.
{ok, Ret} = call().
list操作
添加元素
添加元素进list有很多方式:
代码如下:
[2]++[3, 4].
[2|[3,4]].
foldl/foldr
用于遍历list计算出一个“累加值“,
代码如下:
lists:foldl(fun(X, Sum) ->X + Sum end, 0, [1,2,3,4,5]).
也就是遍历一个list,将每个元素传递给fun,将fun的返回值继续传递给下一个元素。
zip
将两个list一一对应构造出一个tuple,作为新的list里的元素。
代码如下:
lists:zip([1, 2, 3], [4, 5, 6]).
=>[{1,4},{2,5},{3,6}]
数字进制
16##FF,表示16进制数字0xFF,通用格式为scale##num,即scale进制下的num。
篇5:有核心技术真爽
10月24日,访问德国的最后一天,我和德国友人一起访问了一家著名的大型设备制造和施工建设企业,该企业着眼于未来新型能源工业,投巨资进入太阳能热发电的试验推广和工程承揽行业,在南欧、北非等世界级太阳能热发电项目方面已取得实质性合同。此次他们特邀我访问是洽谈电站核心部件的技术要求和供货条件的。虽然他们在常规电站技术和太阳能电站的总体设计施工方面有很好的施工基础和实力,但由于太阳能热电站在全球是全新技术,还没有真正形成成熟产业,除了我们,他们找遍全球也没有找到一家合适的核心部件和组件方面的制造商。
在他们公司总部,我们与对方的总负责人双方互相介绍情况。我介绍了皇明是全球最大的太阳能热利用设备制造商,现在不仅自己有高精尖的科研团队,而且和欧美等著名科研单位具有多年的合作基础。我们现在在世界最先进、最高效、最适用、发电成本最低的费涅尔式太阳能未来热发电的高温直接式蒸汽发生集热镀膜钢管的研发和制造方面,不但取得了实验室的突破,而且形成了上规模的生产能力。能够从原材料开始,完成从粗精加工、抛光、镀膜到激光焊接等全部工序的加工。当他们听到这些介绍时,甚至都没有问价,也没有提出其它疑问,就把自己的技术参数要求全部给出,然后提出供货的期限。反倒是我方提醒对方一定要把可能出现的困难和障碍想全了,提完了,同时邀请对方对我们的技术、性能、生产设施和能力、质量稳定性等进行全面和严格的考查和检验,对方爽快地答应,整个会见过程用了不到两个小时就圆满结束了。
我们早在就将自己多年积累的技术、工艺和国外的实验室技术结合后,投入巨资自行设计自动生产线,研发制造世界最先进也是最难的太阳能高温热发电膜层和镜面反射镜和高透镜,以及部分跟踪聚焦控制仪器设备,这使得我国在世界最前沿最有前途的太阳能热发电领域站在了基础理论、技术研究、产品开发和制造生产的前沿,也为我国今后太阳能沙漠热电站“西电东输”改造沙漠奠定了良好的基础,
中国的传统商品在欧美市场受到了很大的压制,甚至屡遭反倾销,主要原因就是多数无核心技术产品全靠低价竞争。而真正有竞争力的产品,是掌握了核心技术的,一旦我们有了别人没有又急需的技术和产品,别人求你还来不及呢,更不会挤压你了。
黄鸣:皇明太阳能集团董事长,十届全国人大代表,中国可再生能源学会副理事长。前,从石油专业转向致力于太阳能研究,为可再生能源的推广奔走呼吁实践,《中华人民共和国可再生能源法》议案发起人,志愿毕生精力投身于节约型和谐社会的建设,立志做可再生能源呐喊者,能源替代实践者,子孙利益代言人。 浏览黄鸣所有文章 进入黄鸣的博客
篇6:Erlang编程语言的第一印象
这篇文章主要介绍了Erlang编程语言的第一印象,本文对Erlang做了一个简单总结,需要的朋友可以参考下
和朋友切磋高并发的时候,又一次涉及了Erlang,Erlang出自名门爱立信,具有稳定性极高的虚拟机和平台库,Facebook用它实现了聊天系统,Amazon 开发了SimpleDB,最令人惊叹的是What‘sApp了,高并发的处理机制令人瞩目,是时候了解一下Erlang了,
世界是并行的,Erlang程序反应了我们思考和交流的方式,人作为个体通过发送消息进行交流,如果有人死亡,其他人会注意到。
Erlang里的模块类相当于OOPL中的类,进程相当于OOPL里的对象或类实例。
并发编程可以用来提升性能,创建可扩展和容错的系统,以及编写清晰和可理解的程序来控制现实世界里的应用,
并发程序是以一种并发编程语言编写的程序,并发编程语言拥有用于编写并发程序的语言结构。Erlang的并发程序是由互相通信的多组顺序进程组成,一个进程就是一个轻量级的虚拟机,可以执行单个的Erlang函数,只能通过发送和接收消息来与其他进程通信。也就是说,并发性是由Erlang虚拟机提供的,并操作系统的并发控制粒度要小很多。
在Erlang里:
1) 创建和销毁进程是非常快的
2) 在进程间发送消息是非常快的
3) 进程在所有操作系统上都具有相同的行为方式
4) 可以拥有大量的进程
5) 进程间不共享内存,是完全独立的
6) 。
动态代码载入是Erlang特性之一,函数调用的总是最新模块里的最新版函数,哪怕当代码在模块里运行时重新编译了该模块也是如此。
篇7:高速加工的核心技术和方法
高速加工的核心技术和方法
介绍了高速加工的优越性和成功实现高速加工所必需的一些核心技术,叙述了高速高精度加工的`几种方法.
作 者:周正干 王美清 李和平邬学礼 崔在成崔在成(韩国高等技术研究院)
刊 名:航空制造技术 ISTIC英文刊名:AERONAUTICAL MANUFACTURING TECHNOLOGY 年,卷(期): “”(3) 分类号:V2 关键词:高速加工 待加工轨迹监控 计算机数控系统网络化 数控编程篇8:服务器核心技术发展趋势服务器教程
服务器
服务器处理器的多核化在由AMD公司双核Opteron、Intel公司双核Xeon Paxville、SUN公司8核UltraSPARC T1拉开序幕后,在,操作系统及应用软件对多核处理器的进一步支持及优化、65纳米芯片制造工艺的成熟、AMD PowerNow!及Intel EIST为代表的低功耗技术的发展、芯片级虚拟化技术的成熟等诸多因素,将推动服务器处理器多核化趋势的进一步彰显,服务器核心技术06年发展趋势服务器教程
。多核技术将成为2006服务器技术的重要技术支点,更多的多核服务器处理器将在2006年隆重登场,包括Intel公司Xeon Dempsey、双核安腾Montecito,AMD公司的四核Opteron,SUN公司的Niagara II;“多核时代”即将到来。刀片式服务器技术走向市场开始于,开始发展刀片的Swich和存储虚拟化,注重刀片式服务器整体性能提升,20注重刀片式服务器专用化。年,刀片式服务器产品在多核、低功耗技术的推动下将从最初追求高密度的第一代刀片,发展到强调整体综合性能、高生产力的第二代刀片产品。未来两到三年,刀片式服务器将以更高密度、敏捷式部署和维护、全方位监控管理、高可扩展性、高可用性为发展重点,刀片式服务器成为与机架式服务器并驾齐驱的成熟的主流产品。泛高性能计算时代的标志是高性能计算在各行各业的广泛使用,应用的门槛很低,包括低价格、易管理、易用、丰富的应用。工业标准化机群是走向泛高性能计算时代的必由之路,2006年,机群的远程异地操作控制、一体化监控、负载均衡、智能机柜、异构支持、机群简易管理、机群快速部署、机群高速I/O、机群安全、行业应用等技术的发展和标准化,将促使工业标准化机群进一步被行业应用广泛接受。市场上将会出现以高性能计算普及为目标、以机群标准化技术为支撑的桌面型高性能计算机产品。信息化建设的关键应用被传统的RISC小型机所统治和垄断,它们都是以某个企业的技术为核心的封闭式系统。随着64位、多核、低功耗的x86架构处理器的发展,Linux、Open Solaris、Windows等操作系统对8-32路x86架构SMP服务器的进一步支持,尤其是在可靠性、稳定性等方面的进一步提升,以及中间件技术和企业大型应用的平台无关性的趋势,在2006年,基于开放和标准的64位x86架构多路SMP服务器,将能够在信息化建设的关键应用领域挑战传统小型机,并通过与金融、电信等对可靠性、性能要求极高的高端应用的进一步融合,以高性价比为竞争优势,成为我国服务器企业挑战国际企业垄断地位,实现我国低成本信息化的可行之路,Microsoft 的Virtual Server、Vmware的Vmware Workstation、Xensource的Xen、IBM的 hypervisor技术、Intel的Vanderpool和Silvervale、AMD的Pacifica、SUN的Solaris Zone、HP的三层虚拟化规范等虚拟化技术和虚拟化产品,使人们有充分理由相信虚拟化技术在2006年将在系统、部件及应用级全面发展,带来更高的部件及系统级利用率,带来具有透明负载均衡、动态迁移、故障自动隔离、系统自动重构的高可靠服务器应用环境,以及更为简洁、统一的服务器资源分配管理模式。高性能和高效能计算机的体系结构正处于突破性创新的前夜,IBM PERCS计划、SUN HERO计划、Cray Cascade计划、我国的百万/千万亿次高性能计算机计划,无不蕴示着计算机体系结构创新的深度和广度将有更进一步的发展。存储海(Sea of memory)、内存内嵌处理器(PIM)、Interval Arithmetic、异步SMP、智能内存、贴近通信、超并行结构(Hyper Parallel Processing)、异构多核,在2006年,人们期待这场体系结构创新的新成果能显现出来。在2006年,基于内外网隔离、统一身份认证、访问控制、分布式入侵检测、流量分析、应用层及传输层加密传输协议、主动防护等技术,将催生一体化的服务器安全框架,从而打造从物理层到应用层全方位的、多层次的、立体的服务器应用安全计算环境。网格计算、Web service技术、Thin client computing、On-demand computing 、Utility computing,这些技术推动了服务计算应用模式的兴起。在2006年,服务器作为不可缺少的有机载体,将进一步实现以服务计算为形式,以瘦客户端计算为基础,以普适计算为目标的计算融合。能力服务器作为服务计算应用模式的一种,将出现产品形式。篇9:什么是软交换机的核心技术
软交换机技术是当下技术圈里的一个很热门的技术之一,如今许多交换机都能够提供支持快速以太网或FDDI等的高速连接端口,希望本文能给大家带来相关信息,
真正意义的下一代网既需要智能端点业务的创新繁荣,又需要其系统可规模经营管理。下一代网的网络架构体系讨论的难点正在于如何综合平衡考虑多种技术。笔者以为,就目前的技术成熟和发展来看。
。这三种技术各有区别和特长,需要相辅相成,只有采用融合三种技术的网络架构体系和实现手段,才为上策。
下一代网络架构体系更是得由H.323和SIP网络体系来决定。事实上,正如许多学者早已指出的那样,软交换机技术也可以看成在H.323和SIP体系下,智能网关分解的结果。这样,三种技术融合的网络架构体系或许就更加清楚了。
。。
。。
这一体系结构是建立在分布式信号呼叫处理体系结构之上的,它以分布式执行呼叫控制功能,从而地一步改善了呼叫处理性能,
该体系结构将信号消息直接由入口模块送往饿模块。
从而消除了控制模块的瓶颈并允许系统灵活地执行一大批内部控制功能。当然,智能较弱的模块只能简单地通过控制模块为呼叫请求询问路由信息,智能较强的接口模块则可以响应以ATM交换机为目的地的呼叫请求。
控制模块只有当目的地在网络的其他ATM交换机时才被使用,这一体系结构还考虑到多数呼叫请求并不咨询路由协议这一特点。分布式呼叫控制处理体系结构可以大大改善系统的可缩性,其代价则是分布式控制要求对系统中的呼叫控制器件进行极为复杂的管理,因而比分布式信号处理更加难以实现。
此外,由于控制模块继续保留系统的源信息,接口模块必须随时向控制模块报告有关局部资源信息的决定,这也限制了呼叫处理性能的进一步提高。分布式呼叫控制体系结构的呼叫处理能力可达每秒500-1000次,适合在企业或ATM交换机中使用。
将路径选择工作分配给接口模块可以进一步提高系统的性能,因此,控制模块仅用于路由协议布局的交换。在每一次布局更新时,控制模块负责更新由接口模块维护的布局数据库的数据,路由决定器件则负责为给定的呼叫请求进行复杂的路径计算工作。
布局更新通常是周期地进行或是只有当发生重大变化才进行,这些更新所带来的工作量并不大。此外,布局聚合技术还可使路由协议扩充到更大的网络。在这一体系结构下,控制模块已不再处理路径控制工作,分布式路由体系结构的呼叫能力可达每秒1000次,是WAN中核心或ATM交换机理想的选择。
为实现分布式路由呼叫体系结构,贝尔实验室的研究人员用朗讯科技的ATLANTA芯片组成交换硬件,此外,他们还使用了支持ABR业务控制的ERM器件,其交换机由交换矩阵模块、接口模块和控制模块组成,这一技术正在开发研制中,深信该项技术必将是下一代网络的一种主要呼叫体系结构。
目前下一代网讨论中还有一个流行提法是“软交换是下一代网的核心”。笔者以为这个提法值得推敲和商榷。综上所述,软交换机技术是下一代网中的非常重要而关键的语音业务汇聚节点技术之一。。但软交换机的技术特征本身并不提供唯一的、直接的核心网络技术。
篇10:国家核心技术竞争力评价指标体系
摘要:国家科技的发展对于大国之间的博弈和对抗起着至关重要的作用,尤其是具有 决定作用的核心技术或关键技术。本文在回顾宏观层面竞争力评价已有研究的基础上,从 博弈能力和竞争力实现过程的角度,分析了影响国家核心技术竞争力的多种因素,进而构 建了国家核心技术竞争力评价指标体系.
关键词:国家核心技术;竞争力;博弈能力;评价指标体系
学术界对于宏观层面竞争力的研究已有20多年的历史,国内外许多学者和机构都提出了不同 的评价指标体系。研究之初主要从静态的角度来研究各种微观和宏观层面的竞争力,如企业竞争 力、国家竞争力、科技竞争力等,之后开始有学者从动态的过程角度来研究竞争力及其评价指标.本文首先回顾了已有的宏观层面上的竞争力评价指标体系的研究成果,然后从博弈竞争力的角度构 建了国家核心技术竞争力的评价指标体系.
一、国家竞哮力钓评价研宓
国家竞争力显示了一国的综合竞争能力,以企业或产业竞争力为基础,但同时又与该国的制 度、文化等凶素有着密切的关系。国家竞争力评价的方法有很多,其中具有代表性的有国际贸易指 数、波特的钻石模型、世界经济论坛(WEF)和瑞士洛桑国际管理发展学院(IMD)的评价体系.
1.国际贸易指数国际贸易指数的理论基础是比较优势理论。该理论认为,不I司国家的 产品生产成本存在相对差异,这种差异必然会导致各个国家在不同产品的生产上具有比较优势,一 国可以按照自身的比较优势进行生产,并通过参与国际贸易实现其比较优势。在比较优势理论框架 下,一国的国际竞争力取决于其对外贸易竞争力,可以用来测度的指数如净出口指数、贸易条件指 数、生产要素密集度指数和现实性比较优势指数等.
2.波特的钻石模型波特的钻石模型以国家竞争优势理沦为基础,国家竞争优势是指一个 国家使其企业或产业具有并能够维持竞争优势的能力。波特认为一国的国际竞争力是其企业、产业 等竞争力的综合,是一个复杂的系统。基于该思路,他建立了测度国家竞争力的钻石模型,通过生 产要素、市场需求、相关产业支持、企业战略与结构4方面因素综合反映国家竞争力.
年,WEF已包含125个经济体,参评经济体国内生产总值之和已占到世界GDP总量的98.1%.WEF竞争力指数体系包括3种基本指数:增长竞争力指数、商业竞争力指数和全球竞争力指数, 商业竞争力指数侧重从微观层面考察竞争力,增长竞争力指数和全球竞争力指数更侧重宏观经济政 策及制度。各类指数下包括若干基础性指标,评价过程中,首先对基础指标进行评分,然后按照指 标的权数逐层汇总并得到竞争力指数值。IMD的《世界竞争力年鉴》对全球核心国家的竞争力进 行客观、全面的分析及预测。IMD认为,经济运行、政府效率、商务效率和基础设施4种基本要素 决定了一国竞争力发展的环境,每个要素又分解成5个子要素。IMD国家竞争力评价中指标数值计 算也是采用逐层加权汇总的方法.
4.基于博弈的竞争力指标体系在研究和借鉴了已有国家竞争力评估体系中的重要指标 后,侯经川博士在其毕业论文中引入了博弈竞争力的概念,重点研究了针对发展中国家竞争力的评 价指标体系(见表1).
二、斜丝竞雩力和知识产仅竞雩力评价
1.科技竞争力科技竞争力的概念是WEF和IMD在国际竞争力理论、测度和分析基础上 提出的。科技竞争力包括教育和科学的竞争基础、技术的竞争水平、研究与开发的竞争水平、科技 人员的竞争水平、科技管理的竞争水平、科技体制和科技环境的竞争水平、知识产权的竞争水平多 个方面,共有26个评价指标。分别是:R&D经费支出总额;人均R&D经费支出总额;R&D经费 占GDP比重;企业R&D经费支出总额;人均企业R&D经费支出总额;R&D人员总数;R&D人 员所占人口比例;企业问技术合作充分程度;企业与大学问技术转移的充分程度;技术开发资金充 足程度;法律环境支持技术开发与应用的程度;R&D设施重新配置影响未来经济发展的程度;基 础研究支持长期经济、技术发展程度;义务教育阶段科技教育程度;知识产权保护程度等。一个国 家科技竞争力的大小,不仅取决于单个评价因子的状况,而且与诸因子之间相互作用的方式、程度 有密切关系.
2.知识产权竞争力在全球化和经济知识的背景下,知识产权已经成为国家间竞争的重要 武器,知识产权竞争力已成为衡量国家综合竞争力的重要指标之一。陈洁曾构建了一个较为系统的国家知识产权竞争力评价体系,将竞争力看作一个动态的过程,一个竞争潜力、竞争行为和 竞争绩效相互作用的过程。陈洁认为竞争潜力包括两个方面(反映一国知识产权参与竞争的基础条 件)=知识产权保护水平,人力资本;竞争行为包括3个方面(反映一国知识产权参与竞争的力度X R&D活动能力,R&D产出,企业主体地位;竞争绩效包括两个方面(反映一国知识产权参与竞争 的实际效果):产出规模,产出效益.
三、国家仫心技术竞兮力评价
本文将从博弈能力的角度出发,通过研究和分析国家核心技术竞争力的实现过程中所起到关 键作用的因子,来尝试构建国家核心技术竞争力的评价指标体系。 指的主要是对国与国之问对抗和博弈过程中所发挥着关键和决定性作用的重要技术,该类技术往往 代表着一个国家尖端的技术水平,而且对于其他技术的开发、衍生和应用等方面而言是不可或缺的 基础技术.
博弈能力是由支付函数、策略能力和信息能力三者共同作用的一种综合能力。三者之间是乘和 的关系,即:
博弈能力=信息能力×策略能力×支付函数 令博弈能力为c,支付函数为P,策略能力为S,信息能力为I,则有竞争力的博弈表达式: C=I×S×P (1)
事实上,所有的博弈实体之间的竞争都是围绕这个公式展开的。从博弈论的角度看,竞争力是 指博弈局中人博取最大化均衡利益支付的能力,那么可以为国家核心技术竞争力下这么一个定义: 国家核心技术竞争力是国家主体在国际国家核心技术博弈过程中博取最大化均衡国防收益的能力.其中国家收益又包括很多项,比如国家的安全、军事对抗的能力、突袭的能力、报复打击的能力、威慑或威胁的能力、国家对抗下军品贸易的能力等.
NK的评价指标体系。可以分成3个部分进行测度:竞争实力NC,竞争潜力NP和竞争环境NE,三 者之间为乘和关系,任何一个为零,都会导致竞争力为零,因此是乘的关系。则国家核心技术竞争 力指数的计算公式表示如下:
NK=NC×NP×NE (2)
Cs,PCT申请量ct,每百万研发支出产生的专利数Cs。此处所使用指标的量化值都是标准值, 即标准值=某国实际数/所有博弈参与方的最大值。其中核弹头数量显示了国家在军事对抗和应 对冲突中的威慑和报复能力.军品出口值显示了国产军品的国际市场占有率军品国内消费值显示 了国产军品的国内市场占有率;PCT是专利合作条约,它提供了一个国际专利申请体系,PCT的申 请数量显示了一个国家在国际上的专利实力;每百万研发支出产生的专利数显示了国家专利技术研 发的实力和效率,也反映了研发的专利产出能力.
这些指标变量对于竞争实力的影响符合加和的关系,竞争实力不会因为某项为零,而也为 零,但是,每项指标对于竞争实力的影响权重有所区别,因此,满足如下公式:
1一 NC=乞Ot,C #t (3) =OtlCl+仪2C2+ot 3C3+Ot 4C4+仅sC5
其次,竞争潜力NP同样可以用上述的方法来求其计算公式。。(占GNI的百分比),每百万 人的专利数量P。,人均国内生产总值Pa(人均GDP),每十亿美元GDP本国居民专利申请数 P。,专利申请数量P。。其中,研发的投入显示了国家对技术的重视程度和投入程度;每百万人 的专利数量显示了国家的专利能力和专利水平,在一定层面上显示了国家的技术发展水平和自主创 新实力;人均GDP显示了国家的经济实力;每十亿美元GDP本国居民专利申请数和专利申请数量 都显示了一个国家的科研实力、国家的支持能力和国家科研的产出效果.计算公式如下:
NP=乞B。P• “。(4) =p.P。+13。P。+p。P。+p。P.+p。P.
教育能力E:。军费开支表示了政府的支持力度,教育能力表示了政府所能够提供的人力资本支 持力度。
E2=入lT+入zR+入sK (5) 三 NE=乞1iEi=^y。E。+^y。E。(6) i-1
因此可得,某个国家的国家核心技术竞争力指数NKi满足如下等式: NKi=NCi×NPi×NEi
国家核心技术对于国家竞争力的影响主要在于.成本的缩减、性能的提升或武器装备作战效能 的提升、出L1竞争力的提高、出口份额指数的增加、以及自主创新所产生的核心技术或关键技术对 后续或未来科技发展的影响。由于核心技术的特殊性,各国都在严密控制该类技术的流失、泄露或 转移,并依靠这些关键技术在军事对抗中谋求显著的优势。因此,在建立国家核心技术竞争力评价 指标体系的基础上,加大自主创新的力度和有效性,促进国家核心技术的自主研发,提升武器装备 的作战性能,提高核心技术的国际竞争力.
参考文献:
【l】陈洁.国家知识产权竞争力评价指标体系研究【J】.集团经济研究,2006,(10):186—189.
【2】侯经川.基于博弈论的国家竞争力评价体系研究【c】.信息管理科学博士文库,北京图书馆出版社,2005:338.
【3】黄小玉.国家竞争力评价方法评析⋯.统计与决策,2007,(6):36—38.
【4】牟文富.国家竞争力理论综述【J】.国际商务研究,2000,(1):50-53.
【5】Buckley Peter J.,Pass Christopher L.,Prescott Kate.Measures of International Competitiveness:A Critical Survey[J】 Journal of Marketing Management,Winterl988,4(2):175—200.
【6】IMD&WEF。1989—1995,The world Competitive Yearbook.
【7】0ECD.Technology and the Economy:The Key Relationships[M].Pairs,1992.