• 沒有找到結果。

SIP網路伺服器之設計與實作

N/A
N/A
Protected

Academic year: 2021

Share "SIP網路伺服器之設計與實作"

Copied!
12
0
0

加載中.... (立即查看全文)

全文

(1)

行政院國家科學委員會專題研究計畫 成果報告

SIP 網路伺服器之設計與實作

計畫類別: 個別型計畫

計畫編號: NSC93-2219-E-011-007-

執行期間: 93 年 08 月 01 日至 94 年 07 月 31 日 執行單位: 國立臺灣科技大學資訊工程系

計畫主持人: 馮輝文

計畫參與人員: 秦浩倫、林錦惠、彭成慶、廖漢雨

報告類型: 完整報告

報告附件: 出席國際會議研究心得報告及發表論文 處理方式: 本計畫可公開查詢

中 華 民 國 94 年 7 月 25 日

(2)

行政院國家科學委員會專題研究計畫成果報告

SIP 網路伺服器之設計與實作

Design and Implementation of SIP Servers 計畫編號:NSC 93-2219-E-011-007

執行期間: 93 年 8 月 1 日 至 94 年 7 月 31 日 主持人:馮輝文 國立台灣科技大學資訊工程系 計畫參與人員:秦浩倫、林錦惠、彭成慶、廖漢雨

摘要

SIP (Session Initiation Protocol) 是一種 網際網路多媒體通訊協定,在網際網路電話 (Internet Telephony) 服 務 中 , 逐 漸 受 到 重 視。SIP 可以用在網路電話(VoIP)服務,也 可以應用在異質網路環境中的行動管理機 制,甚至是應用在第三代(3G)行動通訊做為 控制信號通訊協定。在本研究計畫中,我們 著重 SIP 應用於 VoIP,我們完成設計與實 作 SIP 網路架構下的伺服器(SIP Servers),

搭配閘道器(Gateway)與傳統 PSTN 達成雙 向互通,完成網路電話的架構。另外,我們 將所建置的 SIP 伺服器與第三方的 SIP 伺服 器做互連相容性測試,以求能共同服務更廣 大的用戶,實驗結果也顯示我們的 SIP 伺服 器與其他 SIP 系統有極佳的互通性。所以本 研究成果將可以用於整合不同 SIP 平台,達 到各系統互通的目標。

關鍵詞: SIP,網路電話,第三代行動通訊 系統,伺服器,公眾交換電話網路。

Abstract

SIP (Session Initiation Protocol) is one of the multimedia communication protocols in the Internet and has gradually received attention in services of the Internet telephony.

It can be used in VoIP (Voice Over IP), mobility management mechanisms in heterogeneous networks, and signaling protocols in the third generation (3G) mobile communication systems. In this project, we focus on the VoIP applications using SIP and have designed and implemented SIP servers working with a PSTN gateway to establish a SIP-based Internet telephony environment. In this environment, we can make calls to the PSTN or Internet. Besides, our SIP servers can successfully interconnect with other SIP servers of the third parties. The testing results show that our SIP servers have great compatibility with other SIP servers. Hence, the results of this project can provide suggestions to integrate different kinds of SIP systems to reach the goal of interconnection for different systems.

Keywords : SIP, Internet Telephony, 3G Mobile Communication System, Server, Public-Switched Telephone Network (PSTN).

(3)

1、 緣由與目的

近幾年來,第三代行動通訊系統之規範 在國際電信組織的強力推動下如火如荼的 展開,第三代行動通訊系統的目標除了提供 多重系統間無縫漫遊(Roaming)服務外,更 寬頻與更多樣化的多媒體通訊服務也將是 其重點發展項目。一般相信第三代行動通訊 系 統 除 了 提 供 傳 統 線 路 交 換 式 (Circuit Switching)的電話服務之外,網際網路電信 服務以及封包交換式語音(Packet Switching Voice)也將是發展的重點。

而隨著網際網路不斷的發展,網路應用 日新月異,使用者對於網路提供電信服務的 使用需求更加多元,國際重要的技術標準制 定組織也積極制定新一代的網際網路電信 通信協定。SIP 是 IETF (Internet Engineering Task Force)所制定的網際網路多媒體通訊 協定。SIP 在網際網路電信的應用逐漸受到 注意與討論。這些應用可分為幾個方向:1、

網路電話(IP Phone);2、網路用戶交換 機(IP PBX);3、網路電信交換機(Soft Switch);4、第三代行動通訊中的控制信 號通訊協定。SIP 已經被公認為 IP 網路與傳 統電信 PSTN 網路整合的關鍵技術,而且它 也被第三代行動通訊系統採用為未來無線 多媒體通訊的技術標準。而在本研究計畫 中,我們所著重的方向是 SIP 在 VoIP [1]中 的應用。

SIP 是直接採用文字( Text-Based )式的 通訊協定,它能在兩兩或更多的傳送參與者 間,發展及控制多媒體傳送( Multimedia Sessions),SIP 也規範通話建立與結束所使 用 的 信 令 方 式 與 訊 息 傳 輸 規 格 的 協商機 制。搭配其它 IETF 協定(這些協定包括 RSVP、HTTP、SAP、MIME…等等),可建 立 SIP-Based Applications,完成 End-to-End 即 時 影 像 或 語 音 傳 送 。 SIP 透 過 PSTN Gateway 可與傳統 PSTN 網路達成雙向互通 的目的,完成網路電話架構。SIP 的架構,

除 了 包 含 SIP User Agent (UA) 、 PSTN Gateway 外,更包含了 Location Server,

Redirect Server , Registrar 以 及 Proxy Server。SIP 使用類似 E-mail 的位址表達方 式(如 sip: hostname@domain),此表達方式 稱 為 SIP URI (Uniform Resource

Identifier),訊息可以被傳送到使用者正在使 用的 IP 裝置,其它的表達方式包括傳統的 電話號碼或是其它可辨識的 ID。因為 SIP 用戶必需向 SIP Server 註冊登錄自己目前的 位置,所以不管使用者使用的是電腦、SIP Soft Phone、手機或者是普通家用電話,透 過向 Server 端詢問,可以隨時掌控使用者 位置,建立通話連線,成為應用層的行動管 理機制。因為 SIP 訊息的傳遞除了最簡單的 直接點對點來當作網路端點之間溝通的載 具以外,都需仰賴 SIP Server 的轉介/路由

(Route),包含身分認證、由指定位址尋 找 目 的 端 點 的 確 實 位 置 以 及 通 話 管理等 等,都需要透過伺服器,可以說是 SIP 通訊 中的樞紐。SIP Server 不僅可以當作基本的 Proxy (Proxy Server)使用,也可以自行撰寫 程式模組擴充其功能,例如更複雜的電話轉 接或者帳單紀錄等。所以本研究計畫的目的 就是建制 SIP 網路架構下的 SIP Server,以 及觸及與第三方 SIP Server 相容性之互通測 試。

2、 相關研究與文獻探討

關於 SIP 伺服器的研製,目前已有許多 廠家完成這一方面的工作,例如:台灣的工 研院[2]、Cisco [3],SIP Express Router (SER) [4],Brekeke [5],CINEMA [6],Partysip [7],

Siemens [8]以及 RADVISION [9]等等。另 外,Vovida [10]也提供 Open Communication Application Library,亦即所謂的 VOCAL (Vovida Open Communication Application Library)給有興趣的研究者關於 SIP 相關的 基本軟體程式庫,在文獻[11] Dang 等人亦 提供綱要式的說明,讓 VOCAL 的使用者能 有 入 門 的 引 導 及 參 考 , 使 研 究 者 可 在 VOCAL 的基礎上,進一步撰寫或是修改深 入的 VoIP 相關的軟體。

至於 SIP 在文獻(論文)上的討論,則主 要有 IETF 之 RFCs [12]-[17];在文獻[18]

中,Schulzrinne 及 Rosenberg 討論 SIP 的網 路 架 構 與 相 關 協 定 如 SDP (Session Description Protocol) 、 RTP 、 RTSP (Real Time Streaming Protocol) 、 CPL (Call Processing Language) 、 GLP (Gateway Location Protocol)以及 LDAP (Lightweight

(4)

Directory Access Protocol) [20]等。在文獻 [19] 中 , Rosenberg 等 人 則提出服務邏輯 (Service Logic)的概念,方便程式的撰寫,

以使用 CGI (Common Gateway Interface) 以及 CPL 的方式來達成 SIP 伺服器的功能 需求。

3、 研究方法

我們使用的程式採用 VOCAL 的開放 原 始 碼 , 建 置 平 台 是 在 Linux Red Hat Version 7.3 上面,程式開發使用 C++ 以及 Java,C++用於程式核心,Java 則用於建立 GUI 介面。VOCAL 在功能上是個 all-in-one 的系統,程式架構上包含 Marshal Server、

Redirect Server 、 Feature Server 以 及 Provisioning Server 等。我們也可以依需求 將各功能 Server 獨立出來於單一機器上運 作,或是將某功能 Server 同時安裝於多台 機器上共同運作,有相當大的擴充性。但是 本身程式上仍有許多不足的地方,例如不支 援 SIP URI 的位置表達方式,所以無法判別 註冊用戶的網域 IP 位置,因此限定使用者 必須都註冊在相同的 SIP Server 下,才能接 受服務。於是我們修改了這問題,讓 SIP Server 可以判別 SIP URI 的網域 IP 位置,

將 SIP 訊息轉送至其他目的 SIP Server。這 樣做的好處是,即使用戶彼此都註冊在不同 網域的 SIP Server,但是 SIP Server 會依據 用戶送出的 SIP URI,負責將訊息轉送至他 方 SIP Server,除了能讓註冊在不同網域的 SIP Server 的用戶都能接受服務,同時也達 到行動管理的目的,這就是本研究計畫的目 標。另外, SIP Server 也配合使用 PSTN Gateway 以及 SIP UA,達成與傳統 PSTN 電話雙向互通,完成電話互通架構。以下分 為五個小節,逐步詳細介紹。

3.1 SIP 各類伺服器功能描述

由 於 程 式 架 構 上 , 分 別 有 Marshal Server、Redirect Server、Feature Server 以及 Provisioning Server 等,如圖一。我們首先 有必要將各類伺服器功能熟悉,之後才能知 道如何修改。以下為相關功能說明:

Marshal Server (MS):

負責 Proxy Server 與 Registrar Server 功 能,所有 SIP 訊息首先都會進入 MS,

然後由 MS 負責再轉送至其他用戶或是 其他伺服器,當 SIP UA 送出的 SIP 訊息 傳遞至 SIP Server 時,是由其中的 MS 來負責接收,MS 一開始將所接收的 SIP 訊息做檢查,檢查是否符合標準中的 SIP 訊息規則,然後再將 SIP 訊息翻譯,最 後轉送 SIP 訊息至應該負責的 Server 或 是 SIP UA。當然除了翻譯訊息之外,

MS 會根據 SIP 訊息中的某些重要欄位 來做決策,例如會判斷傳送訊息的用戶 是否為註冊用戶,若非允許的註冊用戶 則拒絕為其服務;會判斷 SIP URI 的 Server 網域 IP 位置,若非本機 SIP Server 服務之網域,則將其訊息轉送至他方服 務 Server 之網域。相反地,若是為本機 SIP Server 服務之網域,則 MS 會向 Redirect Server 來做詢問的動作,因為 Redirect Server 存有所有註冊用戶目前 的位置,MS 需要透過 Redirect Server 才能知道目前 INVITE 的用戶在哪裡,

所以當 MS 知道用戶位置之後,會將 SIP 訊息送至另外一台 MS,即所謂的 Egress MS,由 Egress MS 來送達目的 SIP UA,

如圖二,另外 MS 也會幫註冊用戶做認 證的動作,使用者可以自己決定需要做 哪種認證,詳細認證說明在下小節介紹。

Redirect Server (RS):

負責 Location Server, Registrar Server 以及 Redirect Server 功能,RS 儲存了所 有註冊用戶的資料包含帳號、密碼,登 入位置等,也可以將某些用戶預先建立 Routing 資訊。RS 在一啟動時,會先從 Provisioning Server 中求得所有登記用 戶的表單資料,因為用戶 ID 是登記在 Provisioning Server 裡的。接下來若是有 某用戶要執行註冊的動作,當 RS 從 MS 收到請求註冊的 SIP 訊息時,即 SIP Register 訊息,此時 RS 會將 SIP Register 訊息中的用戶 ID 與現有用戶表單的 ID 做比較,當一比對出用戶時, RS 就會 將 SIP Register 訊息中的 Contact 欄位與 Expiry 欄位擷取下來,記錄在用戶表單 裡,這樣一來 RS 就存有此用戶目前所 在 IP 位置,這可以作為未來 Routing 之

(5)

用,最後 RS 根據此用戶 ID,RS 要求 Provisioning Server 將此用戶的 Feature 功能傳回 RS,與剛剛擷取的訊息一併記 錄在 RS 裡,這樣才完成所謂的註冊動 作,如圖三。此外 RS 也能預先建立路 由 資 訊 , 即 Dial Plan , 我 們 可 以 在 Provisioning Server 所提供的 GUI 介面 來建立預設的 Routing 資訊於 RS。我們 可以建立一些規則,例如號碼的長度或 是 Prefix,以判斷使用者所撥出的號碼 來決定往哪裡送。

Feature Server (FS):

用來設定一些特殊功能,例如來電等 待,語音信箱,號碼回撥,來電過濾,

無人應答轉接,多方通話,來電顯示等 等。因為此功能不是我們建置 SIP Server 的重點,所以程式上這部分將不做任何 的修改。

Provisioning Server (PS):

PS 是一個用來管理其他各功能 Server 以及註冊用戶的 Java GUI 管理介面,類 似檔案總管的功能,可是新增或刪除用 戶以及伺服器資料。PS 分成兩部份,一 個是 User Configuration,用來管理新增 用戶資料,存有註冊用戶的帳號,密碼 跟 Feature Data 。 一 個 是 Server Configuration,用來管理新增其他各系 統內 Server 的設定。不管 MS,RS,或 是 FS 皆要透過 PS 來做管理與訊息的傳 遞。

圖一:Architecture of SIP Servers。

圖二:SIP Call Flow。

圖三:Redirect Server。

3.2 SIP 註冊與用戶認證

當用戶要註冊時,首先會送出 SIP 註冊 訊息至 MS,MS 此時會去檢查用戶是否為 本系統已登記的用戶 ID,除此之外,MS 也 為了註冊用戶提供認證功能。認證將可以防 範非允許使用者。VOCAL 系統提供了下列 認證方法。

None:

所有用戶不需認證皆可註冊。

Basic:

MS 會去檢查用戶送出的密碼是否正 確,但是送出密碼並未加密。

Access List:

MS 會檢查用戶目前的 IP 位置是否與註 冊資料 IP 位置相同,即我們限定用戶 必須由同一固定 IP 位置登入,否則不 允許用戶註冊。

Digest:

一開始 MS 會送給用戶 Authentication Required 的 SIP 訊息,同時訊息中含有

(6)

一 個 One Time Random Number (Nonce), SIP UA 會用此 Nonce 與用戶 的 Username , Password 共 同 來 製 做 Key,此 Key 是用 MD5 Algorithm One Way Hash Function 製造,然後送回給 MS, MS 收到之後也做同樣的動作製 造 Key,然後比對兩把 Key 是否相同,

相同則允許進入系統。

當註冊用戶通過認證之後,MS 會轉送 SIP 訊息至 RS,RS 會去檢查其儲存用戶表 單是否有用戶的登記資料,假如沒有的話,

RS 會拒絕此用戶註冊。反之,RS 會將此用 戶的目前 IP 位置儲存在用戶表單裡,更新 位置資訊,最後完成註冊動作。

3.3 VOCAL 缺點描述與改進目標

在原 VOCAL 架構上,有許多不足的地 方,無法與其他 SIP 系統相容,因此我們修 改了以下缺失:

不支援 SIP URI:

因為 VOCAL SIP Server 本身不具有網 域的概念,因此用戶限定只能註冊在同 一台 SIP Server 上,而彼此之間撥打時 也只能用某一預先設定的號碼,以上皆 與 SIP 標準規範不同,因此針對此點,

我們將改進使其可以支援 SIP URI。

不支援多台 Proxy Server 動態互連:

由於 VOCAL 不支援 SIP URI,也因此 不會判定 SIP URI 的網域 IP 位置,無法 轉 送 SIP 訊 息 至 其 他 網 域 的 SIP Server,這表示每一台 SIP Server 彼此之 間都獨立無法互連,所以我們將改進此 問題,使其可以依據 SIP URI,判別其 他網域的 SIP Server IP 位置,將訊息轉 送出去,達成與其他 SIP Server 互連的 目標。

3.4 VOCAL 程式碼修改

我們將針對上述發現的問題,在原程式 碼裡修改,以下說明修改的部分程式碼片 段,如圖三。已修改的部分程式碼片段可以 讓 SIP Server 從 SIP INIVTE 訊息中判別 SIP URI 的網域 IP 位置,因此可以將 SIP 訊息

轉 送 至 其 他 網 域 , 亦 或 是 送 到 PSTN Gateway 達到互連的目的。

圖三:A modified part of source codes.

3.5 SIP 環境架設

在原本的程式架構下,每台 SIP Server 都只負責服務自己單一網域的註冊用戶,因 此註冊在其他 SIP Server 網域的使用者,彼 此之間將無法溝通聯絡,這將是一個瓶頸,

因為在未來的環境中,勢必有許多不同廠商 所開發的 SIP 系統,因此每個不同的 SIP 系 統彼此之間要達到相容互連的目標。我們在 程式上修改了此不足的地方,修正讓 SIP Server 可以判別 SIP URI 並且可以轉送給 其他網域的 SIP Server,同時我們也架設各 種不同的環境來測試。

Single SIP Server:

在只有一台 SIP Server 的環境下,註冊 用戶都屬於同一網域下,所以 SIP UA 只需撥打對方的用戶 ID 即可,不需用撥 打完整的 SIP URI,就能彼此互通(如圖 四)。

Multiple SIP Servers:

在不只一台 SIP Server 的環境下,各有 其網域位置,也各自負責管理自己的註

(7)

冊用戶。因此當某一用戶想撥打電話至 另外一個 SIP Server 網域下的用戶時,

就需要撥打完整的 SIP URI,如此本機 負責的 SIP Server 將可以判別網域 IP 位 置,將訊息轉送出去至目的網域的 SIP Server,由其負責溝通(如圖五)。

圖四:Single SIP Server。

圖五:Multiple SIP Servers。

SIP 系統與傳統 PSTN 雙向互通:

將 SIP Server 配合 PSTN Gateway,完成 一簡單的雙向互通電話網路系統。我們 需在 SIP Server 中設定 Gateway IP 位 置,當 SIP Server 收到某一長度的號碼,

由預先建立的撥號規則即可辨認此為傳 統電話號碼,將號碼送至 PSTN Gateway 撥出。而當一般 PSTN 電話撥入時,

PSTN Gateway 亦提供了 SIP UA 號碼 分機功能,能將訊息轉送至 SIP UA。因 而達到雙向互通(如圖六)。

圖六:Connections between a SIP UA and PSTN。

4、 結果與討論

為了測試與其他第三方不同網域的 SIP Server 相容性以及互連性,我們建構了以下 的測試平台。在 SIP Server 方面,我們在本 研究中所改進的 SIP 伺服器,以下稱作 VOCAL SIP Server,與另外三種不同的 SIP Server 互 連 測 試 , 分 別 是 1 : SER SIP Server。2:工研院所開發的 SIP Server,以 下稱作 ITRI SIP Server。3:交通(台灣)大學 參與建置的 NTP SIP-based VoIP 平台,以下 稱作 NTP SIP Server。在 SIP UA 方面,我 們採用 Xten [21]所開發的 X-Lite 作為 SIP Soft Phone,另外我們亦改進了 VOCAL 所 開放原始碼的 SIP UA,使其支援 SIP URI 撥打方式以及 DTMF 分機撥打功能等,將 此 SIP UA 以下稱作 VOCAL UA,亦作為測 試平台的 SIP Soft Phone。在 PSTN Gateway 方 面 , 我 們 購 買 了 Octtel [22] 的 PSTN Gateway,綜合以上架構一個簡單的雙向互 通電話網路系統。

4.1 VOCAL 系統與 VOCAL 系統互連測試

我們架設兩台 VOCAL SIP Server,彼 此設定不同的網域 IP 位置,另外也分別執 行 VOCAL UA 以及 X-Lite 各自註冊在上述 兩台不同 SIP Server 下,實測結果(如表一) 顯示能完全互連。

(8)

表一:VOCAL 系統與 VOCAL 系統互連

4.2 VOCAL 系統與 SER 系統互連測試

我們架設一台 VOCAL SIP Server,一 台 SER SIP Server,彼此設定不同的網域 IP 位 置 , 另 外 也 分 別 執 行 VOCAL UA 與 X-Lite 各自註冊在上述兩台不同 SIP Server 下,由實測結果(如表二),我們確認 VOCAL 與 SER 能夠相容。

表二:VOCAL 系統與 SER 系統互連

4.3 VOCAL 系統與 ITRI 系統互連測試

我們架設一台 VOCAL SIP Server,一 台 IRTI SIP Server,彼此設定不同的網域 IP 位置,另外也分別執行 VOCAL UA 以及 X-Lite 各自註冊在上述兩台不同 SIP Server 下,由實測結果(如表三),我們發現 VOCAL 與 ITRI 在某些情況下無法互通。原因可能 是因為 ITRI 所開發的 SIP Server 在接受以 及傳遞 SIP 訊息較為嚴格,因此由於 SIP UA 開發商眾多,彼此之間 SIP 訊息格式稍有不 同將無法接通。

表三:VOCAL 系統與 ITRI 系統互連

4.4 VOCAL 系統與 NTP 系統雙向互通測

我們架設一台 VOCAL SIP Server,另 外一台是交通大學現有的 NTP SIP Server,

我們分別執行 VOCAL UA 與 X-Lite 各自註

冊在上述兩台不同 SIP Server 下。由於 NTP 系統所採用的號碼是 0944021XXX,所以我 們將 UA1 的號碼預先設定為 0944021091,

UA2 設定為 0944021092,這樣一來 UA2 就 能成功註冊在 NTP SIP Server,另外我們也 將 VOCAL SIP Server 加入 UA1 的號碼,

UA1 就能註冊在 VOCAL SIP Server。同 時,NTP SIP Server 預設設定 VOCAL SIP Server 的路由資訊,所以當一 UA1 註冊在 VOCAL,另一 UA2 註冊在 NTP,此時若要 互相撥打,則 UA2 只需撥打 0944021092,

就 能 成 功撥通給 UA1。若 UA1 要撥打 UA2,則需要撥打完整的 SIP URI,也能成 功撥通。實驗結果如表四,我們所建置的 VOCAL SIP Server 可成功整合於 NTP 平 台。

表四:VOCAL 系統與 NTP 系統互連

4.5 VOCAL 系統與 PSTN 系統雙向互通測

我們架設一台 VOCAL SIP Server,同 時也將 SIP Server 設定好 PSTN Gateway 的 IP 位置以及傳統外線電話的撥號規則。另 外將 PSTN Gateway 預先設定好各 UA 所使 用的號碼,此號碼將可做為傳統外線電話撥 至 UA 時的分機號碼(如圖七)。使用 VOCAL UA 作為 SIP Soft Phone。測試結果成功完成 雙向互通。

圖七:PSTN Gateway 分機設定。

5、 成果自評

本研究計畫著重 SIP 在 VoIP 的應用,

(9)

我們設計與實作了 SIP 伺服器,並配合 PSTN Gateway 與 SIP UA,成功地與傳統 PSTN 達成雙向互通。此外,為了能與其他 第三方不同網域的 SIP 伺服器相容以及互 連,我們修正了原程式碼使得本 SIP 伺服器 能判別 SIP URI,如此可以辨認不同的 SIP 伺服器網域 IP 位置並且轉送出去至目的網 域 SIP 伺服器。根據實驗結果,本 SIP 伺服 器可成功整合於交大(台大) NTP SIP 平 台,因此,本 SIP 伺服器可以與其他伺服器 共同服務更廣大的用戶,同時也達到行動管 理的目標。在未來的工作上,我們將研究 Redirect Server 的用戶資料儲存表單能更有 效的管理以及研究 Feature Server 上一些加 值服務功能等,能夠將本 SIP 伺服器的服務 更多元化。關於 SIP Server 建置這一部份,

我 們 已 將 成 果 投 稿 至 Mobile Computing 2005 並且也已獲接受刊登。另外,此部份 結果我們亦有合作廠商出資來開發此伺服 器,將本計畫結果應用於現有市場上。此 外,在本計畫之經費資助下,我們也發表不 少學術性之論文,包括 2 篇期刊論文以及 4 篇會議論文,分別表列如下:

[P1]. Huei-Wen Ferng, Chung-Fan Lee, Jeng-Ji Huang, and Ge-Ming Chiu, “Designing a fair scheduling mechanism for IEEE 802.11 wireless LANs,”

IEEE Commun. Letters, vol. 9, no. 4, pp.

301-303, April 2005. (included in SCI and EI)

[P2]. Huei-Wen Ferng and Yi-Chou Tsai, “Using priority, buffering, threshold control, and reservation techniques to improve channel-allocation schemes for the GPRS system,” IEEE Trans. Vehicular Technology, vol.

54, no. 1, pp. 286-306, January 2005. (included in SCI and EI)

[P3]. Huei-Wen Ferng, Hao-Lun Chin, David Shiung, and Ying-Tsung Chen, “An OVSF code tree partition policy for WCDMA systems based on the multi-code approach,” in Proc. IEEE VTC 2005-Fall, Dallas, Texas, USA, September 2005.

(included in EI)

[P4]. Huei-Wen Ferng, Jin-Hui Lin, Yuan-Cheng Lai, and Yung-Ching Chen, “OVSF code tree management for UMTS with dynamic resource allocation and class-based QoS provision,” in Proc. IEEE VTC 2005-Fall, Dallas, Texas, USA, September 2005. (included in EI)

[P5]. Huei-Wen Ferng, Hsing-Yu Chen, Jeng-Ji Huang, and Wen-Yan Kao, “A multicast routing algorithm using movement prediction for mobile ad hoc networks,” in Proc. IEEE VTC 2005-Spring, Stockholm, Sweden, May-June 2005. (included in EI)

[P6]. Hao-Lun Chin, Jin-Hui Lin, and Huei-Wen Ferng,

“Study and implementation of SIP servers,” in Proc. Mobile Computing 2005, Taoyuan, Taiwan, March 2005.

所以本計畫結果成果豐碩,不僅完成 SIP Server 軟體之建置並與 NTP 平台整合,也 因經費之補助,讓我們有機會發表多篇學術 性期刊以及會議論文。而關於伺服器之安裝 說明,我們簡述於附錄的部份。

6、 參考文獻

[1] U. D. Black, Voice Over IP, 2nd Edition, Prentice Hall, Jan. 2002.

[2] ITRI, “SIP

protocol, ”http://www.itri.org.tw/chi/rnd/

advanced_rnd/telecom_optoelectron/XB 92-01.jsp.

[3] Cisco, “CISCO SIP proxy server - Product overview,”

http://www.cisco.com/univercd/cc/td/doc /product/voice/sipproxy/admingd/ver1_0 /overview.pdf.

[4] SER, “iptel.org SIP software,”

http://www.iptel.org/ser/.

[5] Brekeke, “Ondo SIP server,”

http://www.brekeke.com/en/products/sip server_en.html.

[6] CINEMA, “Columbia internet extensible multimedia architecture,”

(10)

http://www.cs.columbia.edu/IRT/cinema.

[7] Partysip, “The party SIP proxy server,”

http://www.nongnu.org/partysip.html.

[8] Siemens, “Overview of the SIP proxy/registrar v0.9,”

http://www.mysip.ch.

[9] RADVISION, “SIP server tookit,”

http://www.radvision.com/TBU/Products /SIP+Solutions/SIP+Server+Tookit/

[10] Henning Schulzrinne’s SIP page http://www.cs.columbia.edu/sip/.Vovida Open Communication Application Library (VOCAL)

http://www.vovida.org/.

[11] L. Dang, C. Jennings, and D. Kelly, Practical VoIP Using VOCAL, OReilly

& Associates Inc., 2002.

[12] IEIF, “SIP: Session initiation protocol,”

http://www.ietf.org/rfc/rfc3261.txt, Jun.

2002.

[13] IEIF, “Session initiation protocol (SIP):

Locating SIP servers,”

http://www.ietf.org/rfc/rfc3263.txt, Jun.

2002.

[14] IETF, “The session initiation protocol (SIP) and session description protocol (SDP) static dictionary for signaling compression (SigComp),”

http://www.rfc-editor.org/rfc/rfc3485.txt, Feb. 2003.

[15] IETF, “Dynamic host configuration [16] protocol (DHCP-for-IPv4) option for

session initiation protocol (SIP) servers,”

http://www.rfc-editor.org/rfc/rfc3361.txt, Aug. 2002.

[17] IETF, “Session initiation protocol (SIP) extension header field for registering non-adjacent contacts,”

http://www.rfc-editor.org/rfc/rfc3327.txt, Dec. 2002.

[18] IETF, “The PINT service protocol:

Extensions to SIP and SDP for IP access to telephone call services,”

http://www.rfc-editor.org/rfc/rfc2848.txt, Jun. 2000.

[19] H. Schulzrinne and J. Rosenberg,“The IETF Internet telephony architecture and protocols,” IEEE Network, pp.18-23, May/June 1999.

[20] J. Rosenberg, J. Lennox, and H.

Schulzrinne, “Programming Internet telephony services,” IEEE Internet Computing, pp.63-72, May/June 1999.

[21] T. Bialaski, “Implementing LDAP in the Solaris operating environment,” Sun Blueprints, Oct. 2000.

[22] Xten, “Xten products download,”

http://www.xten.com/index.php?=menu=

products&smenu=download.

[23] Octtel, “SP 4220DX,”

http://www.octtel.com.tw/taiwan/product _mgsl4220DX_1.php.

7、附錄

SIP Server 安裝步驟

7.1、硬體需求

700 MHz,Intel Pentium III PC processor 512MB RAM

1 GB of hard disk space

7.2、軟體需求

Linux,Red Hat Version 7.3

Java Run time Environment (JRE) 1.3.1 以上

7.3、Linux Red Hat 預先設定 To check your /etc/hosts file

7.4、安裝程式 (Installing from binary files) 於 /usr/local 資料夾下執行

tar -xvzf vocal.gz

/usr/local/vocal/bin/allinoneconfigure/all inoneconfiugre

7.5、安裝程式 (Installing from source) ./configure

make make install 7.6、啟動程式 開啟NAT Support:

(11)

於 /usr/local/vocal 檔案資料夾內執行 Java RTPserver

指令:

啟動 /usr/local/vocal/bin/vocalctl start 停止 /usr/local/vocal/bin/vocalctl stop 關閉 /usr/local/vocal/bin/vocalctl shutdown

狀態 /usr/local/vocal/bin/vocalctl status make install

啟動 Server GUI :

執行 /usr/local/vocal/bin/provgui localhost 6005

7.7、安裝 Server 程式於多台電腦:

先將Proxy Server程式安裝於一台,然 後在 /usr/local/ 下將vocal資料夾打 包,執行 tar cvzf vocal.gz vocal 將打包檔案送出給其他電腦,執行 scp vocal.gz root@host2:/usr/local scp vocal.gz root@host3:/usr/local scp vocal.gz root@host4:/usr/local 其他電腦收到檔案之後,需在 /usr/local 解開打包檔案 執行 tar xvzf vocal.gz vocal 執行 /usr/local/vocal/bin/

allinoneconfigure/allinoneconfiugre 在Provisioning Server中設定其它電腦 IP address

7.8、登入 Server 畫面

登入User Configuration可以管理註冊 用戶

登入Proxy Server可以管理各Server

7.9、設定撥打 PSTN gateway 設定

進入ipplan與digitplan新增 (a) key:^sip:[0-9]{8}

contact:sip;$USER@gatewayIPaddress:5060

;user=phone

(b) key:^sip:[0-9]{3}

contact:sip:$USER@gatewayIPaddress:5060

;user=phone

7.10、User Configuration 設定畫面

7.11、Server Configuration 設定畫面

(12)

7.12、Marshal Server 設定畫面 7.13、Redirect Server 設定畫面

參考文獻

相關文件

2.熟 悉 Microsoft Windows Server 作 業 系 統 、 Microsoft SQL Server 資料庫伺服器及網 頁伺服器等環境。. 3.具撰寫 JAVA

(A)因為用 Terminal Services 可以不用安裝 ERP 的程式在 Client 端上可以減少 MIS 維護系 統的時間(B)沒有防毒軟體 (C)建置防火牆的系統 (D) APP-Server 與 DB

最後特別提出說明,本研究用戶端作業系統為 Win 2000 Professional,伺服 器端作業系統為 Windows 2000 Server 並啟動 Active Directory

  SOA 記錄裏,記載著關於該 域名權責區域的一些主 要網域名稱伺服器 ( primary DNS server) 和其它 相關的次要名稱伺服器 ( secondary DNS server)

例如 : http ( 網頁伺服器所用的協定 ) 定義了 client 如何向 server request 網頁及 server 如何 將網頁及其中的各種內容回傳給 client 。. 提供服務給 application layer

每個 zone 交由一部 name server負責的作 法會有一個問題,萬一這個 name server 當 掉,可能造成 Internet上其它機器無法取得屬 於這個 zone 的資料(就是 domain name

Note that if the server-side system allows conflicting transaction instances to commit in an order different from their serializability order, then each client-side system must apply

[r]