书馨卡帮你省薪
欢迎光临中图网 请 | 注册

Kamailio实战

出版社:机械工业出版社出版时间:2022-10-01
开本: 24cm 页数: 16,281页
中 图 价:¥72.3(7.3折) 定价  ¥99.0 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
本类五星书更多>

Kamailio实战 版权信息

Kamailio实战 本书特色

这是资深网络通信技术专家,FreeSWITCH-CN中文社区创始人,《FreeSWITCH权威指南》作者杜金房老师的又一力作,本书从实战角度对Kamailio的使用、维护、路由转发、WebRTC对接、性能和安全等进行深入解读,内含大量实例。 本书可以视为《FreeSWITCH权威指南》的姊妹篇,秉承杜金房老师的一贯风格:庖丁解牛,代码说话。本书既有系统大局观,又有详实的操作步骤,是学习Kamailio和SIP技术的宝典。 —— 宋利 上海交通大学教授 杜老师在项目开发和与客户的交流中发现单机版的FreeSWITCH已经无法满足需求,因此撰写了本书。本书融入了杜老师丰富的Kamailio软件开发经验,他在书中列举了大量Kamailio操作实例,还加入了FreeSWITCH、Lua等快速入门内容。本书是一本实用、详细的Kamailio教程,一定会像《FreeSWITCH权威指南》一样大受欢迎。 ——张昊 中南大学计算机学院教授、博士生导师,腾讯云具价值专家(TVP) 2015年在声网主办的实时互联网大会(RTE大会)上我认识了杜金房先生。他始终致力于开源电信项目的研究,在这方面笔耕不辍、著作等身。他在FreeSWITCH方面的很多书籍、文章已成为这个领域的基础资料,帮助了不少电信和WebRTC领域的开发者。这本书对Kamailio相关知识的介绍深入浅出,相信对Kamailio有兴趣的同行们能从中受益。 —— 赵斌 声网创始人兼CEO 一本深入浅出介绍SIP基础知识、Kamailio实战的好书。一个诞生20年的成熟开源项目,现在终于有了介绍它的中文版图书,强烈推荐给每一位对SIP感兴趣的朋友,大家认真研读,必有收获。 ——庄表伟 开源社理事 杜老师在互联网音视频和通信网语音技术体系方面有丰富的经验与独到的见解,作为腾讯云具价值专家(TVP),在业界有着广泛的影响。本书从原理和实战两方面入手,从SIP出发,深入浅出地对Kamailio的基本原理、组件及高效使用进行了全面阐述,生动且不失深度,适合通信网开发及维护人员、互联网音视频从业者以及相关专业高校学生阅读。 ——王军 腾讯云通信副总经理 杜老师是国内SIP和音视频领域的专家,一直积极参与FreeSWITCH开源项目,并热衷于在社区布道,使用过FreeSWITCH的朋友可能都读过他的书。Kamailio作为SIP代理服务器,可以很好地帮助构建FreeSWITCH集群。杜老师的这本书非常棒,值得想要了解Kamailio、想要构建FreeSWITCH集群的朋友阅读。 ——赵加雨 钉钉副总裁,音视频负责人

Kamailio实战 内容简介

本书涵盖Kamailio核心概念、运行原理、基本配置、路由转发逻辑、路由脚本撰写、数据库操作、性能测试、安全等内容。第2章和第3章深入讲解Kamailio的配置文件、基本概念和核心组件,以帮助读者深入理解Kamailio,并为后边把Kamailio用起来打好基础。第4-7章:分别介绍了KEMI、Kamailio的运行环境、Kamailio做路由转发的方法,以及Kamailio中数据库的操作与使用方法,同时配有大量的实际案例,这部分可帮读者快速把Kamailio用起来。第8章用案例的形式进一步解读了Kamailio常见的模块及其用法,以及一些高级的话题,如SBC、媒体代理和拓扑隐藏、WebRTC相关的信令及媒体转换等。第9章介绍与Kamailio性能相关的内容,包括构建高性能SIP服务器的注意事项以及Kamailio具有高性能的秘密。第10章分享了实际生产系统中常见的安全问题,并给出对应的解决方案。另外,为了便于读者快速上手,本书还以附录的形式对Kamailio安装方法,以及FreeSWITCH、Lua、Docker入门知识进行了简单介绍。

Kamailio实战 目录

目 录 推荐序一 推荐序二 前言 第1章 Kamailio与SIP1 1.1 什么是Kamailio1 1.2 背景3 1.3 SIP5 1.3.1 SIP基础6 1.3.2 SIP的基本概念和相关元素7 1.3.3 SIP的基本方法和头域9 1.3.4 SIP URI9 1.3.5 SDP和SOA10 1.3.6 SIP承载14 1.3.7 事务、对话和会话14 1.3.8 Stateless与Stateful17 1.3.9 严格路由和松散路由18 1.3.10 Record-Route19 1.4 Kamailio基本架构19 第2章 理解Kamailio配置文件23 2.1 基本配置文件23 2.2 原生脚本27 2.3 Lua脚本32 2.4 Lua脚本的其他写法38 第3章 Kamailio基本概念和组件40 3.1 core详解40 3.1.1 全局参数部分40 3.1.2 模块设置部分41 3.1.3 路由块部分41 3.1.4 通用元素42 3.1.5 核心关键字46 3.1.6 核心值48 3.1.7 核心参数49 3.1.8 DNS相关参数60 3.1.9 TCP相关参数或选项61 3.1.10 TLS相关参数66 3.1.11 SCTP概述66 3.1.12 UDP相关参数66 3.1.13 核心函数67 3.1.14 自定义全局参数73 3.1.15 脚本语句73 3.1.16 脚本操作符75 3.2 其他概念和组件78 3.2.1 伪变量78 3.2.2 htable79 3.2.3 AVP80 3.2.4 模块81 第4章 KEMI详解83 4.1 KEMI Lua入口84 4.2 KEMI函数85 4.2.1 函数整型返回值规则85 4.2.2 函数返回0的情况86 4.2.3 模块函数86 4.3 在C函数中导出KEMI函数86 4.4 KEMI和伪变量89 4.4.1 伪变量静态名称限制89 4.4.2 针对特定伪变量的函数90 4.5 核心和pv模块中的函数91 4.5.1 核心中的常用函数91 4.5.2 pv模块相关函数94 4.5.3 KSR.hdr子模块96 4.5.4 特殊的KEMI函数99 4.6 原生脚本与KEMI对比100 4.6.1 函数名100 4.6.2 函数的参数100 4.6.3 停止当前脚本执行101 4.7 其他101 第5章 Kamailio运行环境与实例104 5.1 运行Kamailio104 5.1.1 环境准备104 5.1.2 在命令行上运行Kamailio105 5.1.3 将配置文件保存到宿主机113 5.1.4 使用Docker Compose管理 容器113 5.2 将SIP呼叫转发到FreeSWITCH115 5.3 从简单的路由脚本开始116 5.4 Kamailio命令行工具117 5.4.1 kamctl117 5.4.2 kamdbctl120 5.4.3 kamcmd121 5.4.4 kamcli122 5.4.5 sipexer124 5.5 Web管理界面127 5.6 调试与排错130 5.6.1 使用sipdump模块跟踪SIP 消息130 5.6.2 其他SIP相关工具简介131 第6章 使用Kamailio做SIP 路由转发132 6.1 什么是路由132 6.2 基本路由转发134 6.2.1 简单、安全的路由转发134 6.2.2 无状态转发134 6.2.3 有状态转发135 6.2.4 并行转发135 6.2.5 串行转发138 6.3 使用dispatcher模块做路由转发 和负载均衡140 6.3.1 基本用法140 6.3.2 dispatcher模块142 6.3.3 优先级路由及备用路由144 6.3.4 按权重路由145 6.3.5 特殊参数145 6.3.6 从数据库中加载146 6.4 呼叫从哪里来146 6.4.1 根据IP地址段判断147 6.4.2 使用dispatcher模块判断148 6.4.3 使用permissions模块判断149 6.4.4 使用geoip2模块判断150 6.5 API路由151 6.5.1 通过HTTP查询路由151 6.5.2 rtjson157 6.5.3 evapi161 6.6 在KEMI脚本中调用原生脚本 中的路由块168 第7章 数据库操作169 7.1 初始化数据库169 7.1.1 PostgreSQL169 7.1.2 MySQL171 7.2 配置数据库连接172 7.3 在路由时进行SQL查询172 7.4 其他函数和伪变量174 7.5 常用数据库表结构175 第8章 15个典型的路由示例177 8.1 通过号码分析树进行路由177 8.2 号码翻译179 8.3 低成本路由181 8.4 前缀路由184 8.5 动态路由186 8.6 缩位拨号188 8.7 通过别名数据库路由189 8.8 运营商路由190 8.9 字冠域名翻译192 8.10 用户注册和查询193 8.11 向外注册195 8.12 更多AVP示例198 8.13 话单200 8.14 SBC202 8.14.1 代理注册202 8.14.2 NAT穿透206 8.14.3 代理媒体209 8.14.4 使用FreeSWITCH做B2BUA 模式217 8.14.5 拓扑隐藏218 8.15 WebRTC219 第9章 性能223 9.1 性能测试223 9.1.1 早期的性能测试223 9.1.2 KEMI性能测试234 9.1.3 使用VoIPPerf进行性能 测试235 9.2 拆解Kamailio高性能信令服务 设计238 9.2.1 懒解析238 9.2.2 内存管理240 9.2.3 并发和同步241 9.2.4 定时器和异步操作242 9.2.5 缓存242 9.2.6 异步处理243 9.2.7 其他243 第10章 安全244 10.1 基本安全手段和策略244 10.2 限呼245 10.2.1 限制User-Agent头域245 10.2.2 限呼某些目的地246 10.2.3 限制高频呼叫247 10.2.4 限制太多的错误鉴权248 10.2.5 限制并发呼叫249 10.3 TLS250 10.3.1 理解TLS证书及密钥251 10.3.2 自签名证书252 10.3.3 在Kamailio中配置TLS252 10.3.4 TLS连接测试253 10.3.5 自制CA根证书254 10.3.6 其他255 10.4 iptables256 10.5 其他安全建议和相关链接257 附录A 安装Kamailio258 附录B FreeSWITCH快速入门262 附录C Lua快速入门267 附录D Docker简介及常用命令275 附录E 模块索引表280 后记282
展开全部

Kamailio实战 作者简介

杜金房,FreeSWITCH中文社区创始人,FreeSWITCH内核代码贡献者,kamailio核心贡献者、架构设计者。2001年毕业于烟台大学,童年进入烟台电信工作,负责交换机、网管系统维护、并开发了大量网管及办公系统。经历了电信改通信、通信改网通等一系列变革。2008年加入Idapted,开始使用FreeSWITCH,为国内多家大型企业提供相关的咨询服务和解决方案。2011年和2012年两次啊参加美国芝加哥大学举办的全球VoIP开发者大会并发表演讲。

商品评论(0条)
暂无评论……
书友推荐
本类畅销
编辑推荐
返回顶部
中图网
在线客服