作業二 : SIP User Mobility 實驗目的 實作部分 藉由Location Server和Redirect Server的設計,深入瞭解SIP的運作及訊息格式。 實作部分 (1)實作一個 Location Server 來接收 SIP REGISTER ,而且 要將 REGISTER 中 Contact header 裡的URI記錄下來 。
(2)實作一個 Redirect Server 來接收 SIP INVITE Requests , 並且對INVITE Request 送出 SIP 302 Moved Temporarily Response,其中要把剛剛紀錄下來的 URI 放在 Contact header中。
Sample [1/5] CCL SIP User Agent (1)Preference (喜好設定)
Sample [2/5] 勾掉(因為不用Proxy) 填入Registar的IP,Port
Sample [3/5] 填入自己的名字 填入想要聽的Port
Sample [4/5] Jay@ntu.edu.tw REGISTER To:Jay@hinet.net Contact:Jay@ntu.edu.tw 200 OK
Sample [5/5] Jay@ntu.edu.tw Flora@nctu.edu.tw SIP:Jay@hinet.net (2)SIP:Jay@ntu.edu.tw (3)SIP:Jay@ntu.edu.tw SIP:Jay@hinet.net
將Location Information 程式實做部分 Location Server, Redirect Server可用各種程式語言實做,包括Java Socket, WinSock, Perl, Berkely Socket … 程式架構如下 : 將Location Information 放置於檔案或資料庫中 接收REGISTER訊息, 並且進行Parse 接收INVITE訊息, 並且進行Parse 比對檔案或資料庫的資料 傳回302 Move Temporarily 的 SIP Message
Redirect Server
Location Server
注意事項 可使用的程式語言不拘,可以使用Berkeley Socket, WinSock, Java Socket,… 作業嚴禁抄襲.如果demo當天或事後評分時發現有抄襲現象,則一律以平均分數計算.(例如5個人繳交相同的source code,若此份作業分數為90分,則以90/5 = 18分計分.所以請同學也儘量避免將作業借給同學抄襲,以免損失自己的分數.) 只要不抄襲,若無法完成作業也會依實作的進度給分 如果有同學因故無法Demo,請於Demo時間的一個禮拜之前與助教變更時段或另外約時間Demo.逾期不接受補Demo.
作業要求與繳交方式 作業要求 Redirect Server(60%) 報告(20%) Location Server(10%) 助教斟酌加分(10%) 繳交方式 mailto : voip_hw@voip.csie.ntu.edu.tw 信件標題 : 學號_姓名 附件 所有的source code file 報告 繳交期限 2004/04/27 PM6:00(第三次作業前遲交以八折計算) Demo時間 2004/04/28 個人時段另行公佈