若要通过 IP 网络进行传真,可以使用三种方法:
带内传真 - 编解码器采用与语音相同的方式对传真音进行数字编码。
T.38 — 通过IP网络的实时组3传真
T.37 — 在Internet上存储和转发(S&F)传真
带内传真不十分普及,因为这种方法的效率较低。导致这种低效率的原因是编解码器比特率较低,无法对传真(和调制解调器)音以及任何其他非语音声音进行精确的编码和解码。因此,若要高效进行带内传真,必须使用比特率较高的编解码器(G.726r32 或 G.711)。 这样做并不会节省带宽,因此通过数据网络进行传真这一方法不是很有吸收力。
如果采用 T.38,则在通过 IP 网络进行传真时无需使用高质量的编解码器。在连接呼叫并启动传真协商后,每个网关都将参与本地传真机的 T.30 信令,但协商是端到端的。这是因为,T.30 消息将编码到数据包中并通过 IP 网络进行中继。同样,也将对页面数据进行编码并通过数据网络进行转发。有关 T.38 传真中继的详细信息,请参阅配置带有 VoIP 的传真中继 T.38。
T.37 是 T.38 的增强,因为 T.37 实现了 S&F 功能。S&F 传真具有两种运行模式:
OnRamp - 接收以电子邮件附件形式传送的传真
OffRamp - 发送以传真形式传送的标准电子邮件
只能以标记图像文件格式 (TIFF) 附件的形式接收电子邮件,但将以纯文本、丰富格式文本或 TIFF 附件的形式发送电子邮件。由于 S&F 传真可与电子邮件集成,因此这种方法十分有用。您可以将电子邮件服务器配置为不断重试,直到成功并提供随时可用的传真服务。通过使用电子邮件别名和分配列表,可以将单个传真发送到多个电子邮件地址,反之,也可以将单个电子邮件发送到多个传真机。
本文档的读者必须熟悉以下知识:
IP 传真 (FoIP) 基本知识。 有关详细信息,请参阅包含以下内容的文档:
Simple Mail Transfer Protocol (SMTP) 的基本功能。有关详细信息,请参阅 RFC 821 。
有关最新传真功能和硬件支持,请参阅 Cisco IP 传真服务应用指南以及所用版本的 Cisco IOS 软件发行版本注释。一般来说,T.37 支持的平台包括:
175倍
26xx、36xx
37x5
5300、5350、5400、5800、5850
下表提供了与其中一些平台相关的性能参数:
Platform | 限制 |
---|---|
1750 | 最少 128M RAM;如果使用 Interactive Voice Response (IVR) 2.0 或使用最多 192 个 S&F 传真会话,则需要 256M |
5300 | 60 个同时 S&F 传真会话(入站或出站)或最多 120 个语音会话(语音、IVR 或者传真中继)(2 x S&F 传真呼叫)+ 语音呼叫 = 120 |
5850 | 120 个 S&F 传真会话(会话总数为 800)- 192 个 S&F 传真会话(会话总数为 750) |
本文档中使用了以下组件:
具有 Cisco IOS® 软件版本 12.2(15)T9 的 Cisco 3660
具有 Cisco IOS 软件版本 12.2(15)T9 的 Cisco AS5300
具有 Cisco IOS 软件版本 12.2(15)T9 的 Cisco AS5350
SMTP 服务器版本 5.0.2195.4453
有关文件规则的更多信息请参见“ Cisco技术提示规则”。
与默认 IP 语音 (VoIP) 或 IVR 应用程序一样,T.37 也是位于呼叫控制应用程序编程接口 (CCAPI) 上方的应用程序。它由拨号对等体(IP 多媒体邮件 [MMoIP] 或普通旧式电话服务 [POTS])下的应用程序设置进行调用。T.37 对各个电子邮件会话参数(如处置和消息通知)使用 MMoIP 拨号对等体(拨号对等体语音 1 MMoIP)的概念。
S&F 传真相关应用程序扩展到 AS5300 的 VFC 模块以及 AS5400 和 AS5350 的 NP DSP 模块(也称为 Libretto 应用程序)上的特定功能。 下面列出了主要功能:
如果无需身份验证,则从 IVR 或直接接受新的 OnRamp 呼叫
通过语音电话服务提供商 (VTSP)、传真媒体服务提供商 (FMSP) 和文档媒体服务提供商 (DMSP) 提供设置、网桥和事务事件
创建 fax_record 文件以引用传真的特定信息
提供传真调制解调器训练和协商
解调公共交换电话网 (PSTN) 的 T.30 传真信号
将 T.30 信号转换为 T.38 数据包
封装在 User Datagram Protocol (UDP) 数据内
提取 T.4 数据,合并数据包报头
提供透明字节剥离(数据链路封装 [DLE] DLE)
为传真生成页面结束检测(DLE 后面是 ETX,ETX 是表示语音数据流结束的流末尾)
将数据复制到缓冲区中并将缓冲区排队到 DMSP 中
将 T.4 传真数据转换为使用 TIFF 或文本库的 TIFF 图像
通过 Cisco IOS 队列事件接受来自 FMSP 的缓冲区以进行 TIFF 转换
执行所有二类传真协议操作
从 VTSP 接收 T.38 数据包并将这些数据包调制回 T.30 信号
从 T.30 协议提取 T.4 数据并将数据传递给 DMSP
添加透明度字节 (DLE DLE)
生成页面结束指示 (DLE ETX)
插入填充位(以获得最小扫描线时间)
传输覆盖或有效负载队列中的数据
从 FMSP 处理数据缓冲区
呼叫 TIFF 引擎以将 TIFF 或文本(报头)数据转换为 T.4 传真数据格式(按页、解析和编码来传递行)
处理 TIFF 引擎的缓冲区管理
从 DMSP 处理数据缓冲区
呼叫“文本到传真”引擎以将文本数据转换为传真数据格式(按页、解析和编码来传递行)
处理“文本到传真”引擎的缓冲区管理
通过 VTSP、FMSP 和 DMSP 提供设置、桥接和事务事件
使用 MIB 生成活动呼叫或历史记录事件
创建 fax_payload 和 fax_records 文件
SMTP 的目标是可靠而高效地传送电子邮件。SMTP 使用以下基本模型对邮件请求进行寻址:
在发送方和接收方之间建立双向传输信道。
发送方生成发送给接收方的 SMTP 命令。
接收方用 SMTP 回复进行响应。
下面列出了常见 SMTP 命令:
注意:命令不区分大小写(例如mail=MaiL)。 有关完整列表,请参阅 RFC 821 的 4.1 部分。
HELO - 向接收方 SMTP 标识发送方 SMTP。接收方 SMTP 在 OK 回复中标识自身。如果不支持服务扩展,则该消息必须是 SMTP 交换中的第一条消息。
vdtl-5300-7a#telnet 172.18.106.36 25 Trying 172.18.106.36, 25 ... Open 220 testlab-smtp.testlab-t37.com Microsoft ESMTP MAIL Service, Version: 5.0.2195.4453 ready at Tue, 5 Mar 2002 12:08:24 -0500 mail from:<tom@testlab-t37.com> 503 5.5.2 Send hello first
EHLO - 使用此命令(而不是 HELO 命令)可从支持 SMTP 服务扩展的客户端启动会话。如果服务器不支持服务扩展,则该服务器会生成错误响应。
MAIL - 启动邮件事务。参数字段包含电子邮件的发件人地址(例如,发件人的邮箱)。
RCPT - 标识电子邮件的收件人。多个收件人将由多个命令指定(例如“To:”)。
DATA - 邮件数据(例如,电子邮件的正文)。分行句号(字符序列 <CRLF>.<CRLF>)标记数据结束。
SEND - 启动邮件的传送。
QUIT - 关闭 SMTP 会话。在关闭信道之前,需要有 OK 回复。
每个 SMTP 命令都必须生成一个回复。SMTP 回复由一个三位数字及后跟的文本组成。这些数字指示出要进入的下一个状态;文本是解码的回复,需要用户进行调试。有关 SMTP 回复代码的完整列表,请参阅本文档的 SMTP 回复代码部分。在 RFC 1893 中新增了用于传送状态通知 (DSN) 的增强系统状态代码。对于某些回复,这些增强代码可提供有关事务的详细信息。 有关这方面的详细信息,请参阅 RFC 821 的“SMTP Details”部分。
在本示例中,只是通过 Telnet 登录到 SMTP 服务器并发出命令。不使用电子邮件客户端来发送电子邮件。在网关上调试 S&F 传真时,熟悉这些命令和消息流十分重要。这种知识有助于解决疑难问题。
发送方命令以 S: 开头。
接收方回复以 R: 开头。
回复代码以斜体显示。
SMTP 命令用引号括起。
系统状态代码以粗体显示。
vdtl-5300-7a#telnet 172.18.106.36 25 Trying 172.18.106.36, 25 ... Open R: 220 testlab-smtp.testlab-t37.com Microsoft ESMTP MAIL Service, Version: 5.0.2195.4453 ready at Tue, 5 Mar 2002 12:10:01 -0500 S: "helo" testlab-t37.com R: 250 testlab-smtp.testlab-t37.com Hello [15.80.7.11] S: "mail" from:<tom@testlab-t37.com> R: 250 2.1.0 tom@testlab-t37.com....Sender OK S: "rcpt" to:<john@testlab-t37.com> R: 250 2.1.5 john@testlab-t37.com S: "data" R: 354 Start mail input; end with <CRLF>.<CRLF> Subject: This is a test email sent from telnetting to the SMTP server on port 25 From: Tom Jackson
这是 Tom 通过远程登录到 testlab-smtp 服务器上的端口 25 而发送给位于该服务器上的 John 的一封电子邮件,该服务器上的命令行中仅使用 SMTP 命令:
R: 250 2.6.0 <testlab-smtpeYrQz0ek6He00000002@testlab-smtp.testlab-t37.com> Queued mail for delivery S: "quit" R: 221 2.0.0 testlab-smtp.testlab-t37.com Service closing transmission channel [Connection to 172.18.106.36 closed by foreign host] vdtl-5300-7a#
RFC 821 对 SMTP 进行了定义,SMTP 是一种独立于特定传输子系统且只需要可靠而有序的数据流信道的协议。 RFC 822 对邮件进行了定义,这是高级研究项目管理局 (ARPA) Internet 文本消息格式的标准。 这两篇文档是极佳的参考,可帮助您更好地熟悉 SMTP。MIME 消除了 RFC 822 对电子邮件正文设定的许多限制。 MIME 允许以下选项:
US-ASCII 以外的字符集
丰富格式文本
图像
音频
其他消息(可靠封装)
Tar 文件
PostScript
指向支持 FTP 的文件的指针
Cisco S&F 传真可以处理具有以下内容类型的电子邮件:
纯文本
丰富格式文本
图像附件(TIFF 配置文件 F [TIFF-F])
可使用许多方法对电子邮件的正文或附件进行编码。Cisco S&F 传真可处理通过以下选项编码的电子邮件:
7 位
8 位
Base 64
Quotable-printable
TIFF 是由 Adobe 开发的,用于描述通常来自扫描仪、帧接收器以及画图或照片润色程序的图像数据。TIFF 是一种功能十分丰富的格式,具备以下功能:
描述二色阶、灰度级、调色板和全彩色图像数据
允许多种压缩方案
允许包含私有或专用信息
使用 TIFF 对数据进行编码时,有许多不同的选项和方法。对于 OffRamp 应用程序,Cisco T.37 网关获取 TIFF 附件并将该附件转换为传真。不过,TIFF 格式必须符合配置文件 F,这是扩展的黑白传真模式。RFC 2301 中对 TIFF-F 进行了说明。 TIFF-F 支持 Modified Huffman (MH)、Modified Read (MR) 和 Modified Modified Read (MMR) 编码。
在本文档中,将使用下面的网络图作为网络拓扑。
注意:vdtl-5300-7a网关用作OnRamp网关,vdtl-5350-8a用作OffRamp网关。
有关每个网关的配置和调试,请参阅以下链接:
本部分提供有关如何使用此 Exchange 电子邮件服务器的快速提示。当您访问电子邮件服务器时,可使用多个选项:
HTTP - 可通过任何 Web 浏览器访问电子邮件帐户。
IMAP4和POP3 — 设置任何电子邮件客户端以连接到testlab-smtp.cisco.com。
需要访问该服务器的每个用户都需要一个帐户,因此网络管理员必须为这些用户创建帐户。本文档中的 SMTP 服务器(即 testlab-smtp)的默认用户名和口令是每个用户的用户名(用户名和口令相同)。 域为 testlab-t37.com。
通过此电子邮件帐户,可以从任何位置发送电子邮件。因此,任何 OnRamp 重新创建都可以在 MMOIP 拨号对等体中包含任何有效地址:
! dial-peer voice 1 mmoip session target mail to:username@cisco.com !
由于实验室路由器的地址为 15.x.x.x,因此必须从此帐户发送 OffRamp 电子邮件。通过使用“To:”字段,可以直接从此帐户向路由器发送电子邮件,如下面的示例所示:
更改为:FAX=9-555-8354@15.80.7.107
或可将 IP 地址替换为路由器的主机名:
更改为:FAX=9-555-8354@vdtl-5350-8a.testlab-t37.com
不过,这第二种方法需要在 testlab-smtp 中包含一个域名系统 (DNS) 条目。
对于某些 SMTP 回复,如果您对这些回复代码所使用的格式更加了解,则可以获得有关事务的更详细信息。SMTP 回复代码的三个数位具有特殊意义。第一位指示答复是好、是坏还是不完整:
1 xx — 积极初步答复
2xx — 正完成回复
3 xx — 正中间应答
4xx — 临时负完成回复
5 xx — 永久否定完成回复
第二位对不同类别的响应进行编码:
x0 x — 语法
x1 x — 信息
x2 x — 连接
x3 x — 尚未指定
x4 x — 尚未指定
x5 x — 邮件系统
第三位提供第二位所指定的类别的详细信息。下面是 SMTP 回复代码的完整列表:
注意:此处回复代码的材料来源是RFC文档,在本文档的“参考”部分中提到。
211 - 系统状态或系统帮助回复
214 - 帮助消息(有关如何使用接收器的信息或特定非标准命令的意义);此回复仅对实际用户有用。)
220 <域> - 服务就绪
221 <域> - 服务正在关闭传输信道
250 - 请求的邮件操作正常,已完成
251 - 用户不是本地用户;转发到 <转发路径>
354 - 启动邮件输入;以 <CRLF>.<CRLF> 结束
421 <域> - 服务不可用,正在关闭传输信道(如果服务必须关闭,则这可能是对任何命令的回复。)
450 - 未执行请求的邮件操作,邮箱不可用(例如,邮箱正忙)
451 - 请求的操作已中止,进程中出现本地错误
452 - 未执行请求的操作,系统存储空间不足
500 - 语法错误,命令无法识别(这可能包括 command line too long 等错误。)
501 - 参数中存在语法错误
502 - 命令未执行
503 - 命令顺序错误
504 - 命令参数未执行
550 - 未执行请求的操作,邮箱不可用(例如,邮箱未找到或无法访问)
551 - 用户不是本地用户;请尝试 <转发路径>
552 — 请求的邮件操作已中止,超出存储分配
553 - 未执行请求的操作,不允许使用该邮箱名称(例如,邮箱语法不正确)
554 - 事务失败
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
02-Feb-2006 |
初始版本 |