Internet Communications Engine
Ice 架构
Ice 是一种面向对象的中间件平台。从根本上说,这意味着Ice 为构建面向对象的客户-服务
器应用提供了工具、API 和库支持。Ice 应用适合在异种环境中使用:客户和服务器可以用不
同的编程语言编写,可以运行在不同的 *** 作系统和机器架构上,并且可以使用多种网络技术
进行通信。无论部署环境如何,这些应用的源码都是可移植的。
Ice术语
客户与服务器
• 客户是主动的实体。它们向服务器发出服务请求。
• 服务器是被动的实体。它们提供服务,响应客户请求。
Ice 对象
• Ice 对象是本地或远地的地址空间中、能响应客户请求的实体。
• 一个Ice 对象可在单个或多个服务器中实例化(后者是冗余方式)。如果某个对象
同时有多个实例,它仍是一个Ice 对象。
• 每个Ice对象都有一个或多个接口。 一个接口是一个对象所支持的一系列有名称的
*** 作。客户通过调用 *** 作来发出请求。
• 一个 *** 作有零个或更多参数,以及一个返回值。
代理
代理是客户的地址空间中的一种制品。
• 寻址信息:用于让客户端run time 联系正确的服务器
• 对象标识:用于确定服务器中的哪一个对象是请求的目标
• 可选的facet 标识符:用于确定代理所引用的是对象的哪一个facet
Servants
在服务器端提供 *** 作调用的行为的制品叫作servant。一个servant 提供一个或多个Ice 对
象的实质内容
属性
Ice run time有大量功能都是通过属性来配置的。
Slice (Ice 规范语言)
ICE (In-Circuit Emulator)
传统用于测试印刷电路板的方法
ICE是一种专用的设备,配有专用于特定CPU芯片的接头。将ICE的接头骑在CPU芯片上并加以固定,
使它的每一条引线与CPU芯片上的对应引线接触,就可以监测CPU芯片各条引线上的逻辑电平。前言
STUN,首先在RFC3489中定义,作为一个完整的NAT穿透解决方案,英文全称是Simple Traversal of UDP Through NATs,即简单的用UDP穿透NAT。
TURN,首先在RFC5766中定义,英文全称是Traversal Using Relays around NAT:Relay Extensions to Session Traversal Utilities for NAT,即使用中继穿透NAT:STUN的扩展
简单的说,TURN与STURN的共同点都是通过修改应用层中的私网地址达到NAT穿透的效果,异同点是TURN是通过两方通讯的“中间人”方式实现穿透。
ICE的全称Interactive Connectivity Establishment(互动式连接建立),由IETF的MMUSIC工作组开发出来的,它所提供的是一种框架,使各种NAT穿透技术可以实现统一。
STUN和TURN服务器和ICE可以参考阅读: P2P技术详解(三):P2P技术之STUN、TURN、ICE详解
本文介绍如何通过DOCKER搭建STUN和TURN服务器,步骤如下
1:创建Dockerfile,内容如下:
FROM ubuntu:1404
MAINTAINER Patxi Gortázar <patxigortazar@gmailcom>
RUN apt-get update && apt-get install -y \
curl \
libevent-core-20-5 \
libevent-extra-20-5 \
libevent-openssl-20-5 \
libevent-pthreads-20-5 \
libhiredis010 \
libmysqlclient18 \
libpq5 \
telnet \
wget
RUN wget >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)