Kamailio 實戰
杜金房//呂佳娉
- 出版商: 機械工業
- 出版日期: 2022-12-01
- 定價: $594
- 售價: 8.5 折 $505
- 語言: 簡體中文
- 頁數: 282
- 裝訂: 平裝
- ISBN: 7111712471
- ISBN-13: 9787111712473
-
相關分類:
網路通訊、Computer-networks
立即出貨 (庫存 < 4)
買這商品的人也買了...
簡體館年度書展|現貨2書79折3書75折 詳見活動內容 »
-
85折
$806Linux x64 匯編語言編程 -
VIP 95折
MCP 極簡開發 : 輕鬆打造高效智能體$479$455 -
VIP 95折
硬件系統模糊測試:技術揭秘與案例剖析$419$398 -
85折
$245生成式視覺模型原理與實踐 -
87折
$459AI大模型:賦能通信產業 -
85折
$347科學預測——預見科學之美 -
85折
$254Processing創意編程入門:從編程原理到項目案例 -
87折
$360高薪Offer 簡歷、面試、談薪完全攻略 -
79折
$469GitHub Copilot 編程指南 -
VIP 95折
C#核心編程200例(視頻課程+全套源程序)$648$616 -
VIP 95折
SAAS + AI 架構實戰:業務解析、架構設計、AI 應用$708$673 -
VIP 95折
深入淺出 Docker, 2/e$419$398 -
VIP 95折
Unity 特效制作:Shader Graph 案例精講$774$735 -
79折
$275零基礎玩轉國產大模型DeepSeek -
VIP 95折
人工智能大模型:機器學習基礎$774$735 -
VIP 95折
RAG 極簡入門:原理與實踐$419$398 -
VIP 95折
大模型實戰 : 從零實現 RAG 與 Agent 系統$419$398 -
85折
$296算法趣學(第2版) -
85折
$301大模型理論與實踐——打造行業智能助手 -
VIP 95折
生成式人工智能 (基於 PyTorch 實現)$599$569 -
VIP 95折
Java 學習筆記, 6/e$839$797 -
85折
$407ZBrush遊戲角色設計(第2版) -
85折
$454軟件架構決策之道:軟件架構決策的原則和方法 -
79折
$374DeepSeek + Dify + Ollama 全棧 AI 開發實戰 (前端本地部署到大模型集成訓練) -
85折
$505從程式設計師到架構師:大數據技術金融級全場景應用實戰
簡體館年度書展|現貨2書79折3書75折 詳見活動內容 »
-
85折
$806Linux x64 匯編語言編程 -
VIP 95折
MCP 極簡開發 : 輕鬆打造高效智能體$479$455 -
VIP 95折
硬件系統模糊測試:技術揭秘與案例剖析$419$398 -
85折
$245生成式視覺模型原理與實踐 -
87折
$459AI大模型:賦能通信產業 -
85折
$347科學預測——預見科學之美 -
85折
$254Processing創意編程入門:從編程原理到項目案例 -
87折
$360高薪Offer 簡歷、面試、談薪完全攻略 -
79折
$469GitHub Copilot 編程指南 -
VIP 95折
C#核心編程200例(視頻課程+全套源程序)$648$616 -
VIP 95折
SAAS + AI 架構實戰:業務解析、架構設計、AI 應用$708$673 -
VIP 95折
深入淺出 Docker, 2/e$419$398 -
VIP 95折
Unity 特效制作:Shader Graph 案例精講$774$735 -
79折
$275零基礎玩轉國產大模型DeepSeek -
VIP 95折
人工智能大模型:機器學習基礎$774$735 -
VIP 95折
RAG 極簡入門:原理與實踐$419$398 -
VIP 95折
大模型實戰 : 從零實現 RAG 與 Agent 系統$419$398 -
85折
$296算法趣學(第2版) -
85折
$301大模型理論與實踐——打造行業智能助手 -
VIP 95折
生成式人工智能 (基於 PyTorch 實現)$599$569 -
VIP 95折
Java 學習筆記, 6/e$839$797 -
85折
$407ZBrush遊戲角色設計(第2版) -
85折
$454軟件架構決策之道:軟件架構決策的原則和方法 -
79折
$374DeepSeek + Dify + Ollama 全棧 AI 開發實戰 (前端本地部署到大模型集成訓練) -
85折
$505從程式設計師到架構師:大數據技術金融級全場景應用實戰
相關主題
商品描述
這是一本全面介紹Kamailio的專業技術書,也會是市面上第1本Kamailio的圖書。
第1章介紹Kamailio的基本背景和架構,同時對SIP協議進行了比較深入的介紹。
第2~3章介紹了Kamailio運行環境的搭建和配置。
第4~5章對Kamailio的組件組件和KEMI進行深入解析。
第6章介紹如何使用Kamailio做SIP路由轉發。
第7章介紹Kamailio如何與數據庫對接並進行相關操作。
第8章介紹了20種路由方法。
第9章和第10章分別從高性能和安全兩個維度介紹對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
