⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme.txt

📁 a open source project in linux for peer to peer on seep
💻 TXT
字号:
1. GENERAL===============SIP2P is a GPLed experimental implementation of the small part of theSIP Protocol over Peer-To-Peer communication, without central proxy serversfor storing the user data.2. USED LIBRARIES=====================It uses the KadC library (http://kadc.sourceforge.net) for storing and retreivingdata from the kademlia networtk, pthreadcc (http://www.ctie.monash.edu.au/SocketCC/PThreadCC.htm) and the socketcc library (http://sourceforge.net/projects/socketcc) for sockets communications.3. SHORT DESCRIPTION OF SIP2P================================The ideal solution would be to design and implement a SIP client, which has thisfunctionality within. That SIP client would not have to use a SIP server, proxyor whatever, but would retrieve the addresses of other users over kademliaand SIP messages would be sent directly to the called party. But for the timebeing SIP2P starts an UDP server on the specified port, and actually acts like aSIP proxy. For testing the address and the port of SIP2P server should be entered asa SIP proxy in a normal SIP Client (e.g x-Lite, Twinkle, etc.).4. SUPPORTED CALL FLOWS===========================At the moment, only the REGISTER and INVITE messages are supported.After a REGISTER message is received, the user data will be publishedin the kademlia network.And the processing of INVITE messages is also kept quite simple. When an INVITE messageis received, all lines will be copied, but only the one holding the name of the calledparty will be changed. A search in the kademlia network will be started, and thatline will be replaced with name, ip and port number found in the kademlia network.So prepared INVITE message will be sent to the callee. SIP2P then just forwards thenext few messages between the two parties (TRYING, RINGING, and OK) and thenits job is done.For documentation on the source code, look for the comments in header files and in the source iself.5. BUILDING THE PROJECT==========================After building the project with "make", an executable will be created in a subfolder called "dist".So start the program by typing "dist/sip2p".Optionally an argument can be supplied, with the name of the configuration file. If notspecified, the default name "sip2p.ini" will be used. If that or the specified filedoes not exist, the program won't start.6. CONFIGURATION====================The layout of the config file is pretty straight forward. It just uses key-valuepairs for the most important settings.Below is a simple example, and then follows the explanation.#--------------SAMPLE BEGIN----------------------################################################# INI FILE USED FOR STARTING THE SIP2P SERVER#################################################################### IP and port######################S2P_SERVER_IP=<ip address>S2P_SERVER_PORT=5060;#################### KadC conf file location######################KADC_INI_FILE=kadc.ini#################### Debug TRUE or FALSE######################DEBUG=FALSE###################### Publish dummy users ######################DUMMY_PUBLISH=TRUE###################### Fast search for dummy users ######################DUMMY_FAST_SEARCH=TRUE###################### List of dummy users ######################[DUMMY_P2P_USERS]localx=konj@<ip address>:5062local=local@<ip address>:5063#local=local@<ip address>[DUMMY_P2P_USERS_END]#--------------SAMPLE END------------------------Comments start with a '#' sign. All lines starting with a hash key will beignored. Actually if a key name cannot be interpreted, the line containingthat key will also be ignored. Also be careful.The most important settings which must be set for the daily use areS2P_SERVER_IP and S2P_SERVER_PORT. They contain the ip address, (also theip address of the localhost) and the port under which the UDP Server will bestarted. They always must be set. The rest is just used for debugging purposes.The KADC_INI_FILE specifies location of the configuration file for KadCapi, thelibrary used in this project. It should be always kadc.ini, but for debugging purposes,when running more then one process of sip2p, then different ports can be specifiedfor KadC to use in two different configuration files.If DEBUG option is set to TRUE (it is case sensitive, so TRUE, true, or True... are actually FALSE),then the program may behave different from normal mode. For details, please look into the source code.Between the lines [DUMMY_P2P_USERS] and [DUMMY_P2P_USERS_END] you may put names ofsome dummy users and their SIP URLs. Actually these may be real SIP accounts, which are justnot available in the kademlia. If preceded by an Hash key #, then thesesdummy users will also be ignored.If the flag  DUMMY_PUBLISH is TRUE, then the dummy users will be published in the kademlia network.And if the DUMMY_FAST_SEARCH is set to TRUE, then first the names from the configuration file will be searched,and not kademlia. That way you may speed up the development process, without having to wait for kademlia searches,if you are sure they work ok.7. CLIENTS=============v.81 has been tested wtih x-lite v2 which for Windows is e.g. available fromhttp://www.freespeech.co.uk/downloads/X-Lite-2.0-freespeech.co.uk.exeThe following attributes need to be set:System Settings -> SIP Proxy -> add a default proxy with  IP being the sip2p address  Direct Dial IP=yesAdvanced System Settings - SIP Settings  Timeout SIP Messages=60000  Resend SIP Messages=60000E. Sinanovic (designer and developer) - h0251687@wu-wien.ac.atM. Alexander (project advisor) - malexand@wu-wien.ac.at

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -