From: Sebastien V. <se...@ji...> - 2012-12-04 09:55:58
|
As I said it maybe scalability issue with select(). -- Seb Le lundi 3 décembre 2012, John Nash <joh...@gm...> a écrit : > OK. That means implementation is correct. When calls reach 30-40 on client I start getting Timeout to Allocate requests. I am able to connect to Turn port though (I used Telnet to that port and it connected without delay). At this point no new allocation is success all time out . It keeps timing out even if existing realy stop (As calls are disconnected) untill only few active relays are there ..then after around 10 mins again allocation is successful. > > Is there any User memory limitation may be there? > > Regards > > John > > On Tue, Dec 4, 2012 at 12:34 AM, Sebastien Vincent <se...@ji...> wrote: > > Hi, > > See inline. > > Le 30/11/2012 23:17, John Nash a écrit : > > Dear Seb, > > Did you get time to go over my mail? > > John > > On Sat, Nov 24, 2012 at 8:24 PM, John Nash <joh...@gm...> wrote: > > Hello Sebastien, > > Thank you for the reply. I am not much of a programmer but I am trying learn your code and will see if anything I can do to improve. But for this issue I am not too sure if it is because of some problem in the code (I could see one thread where Bill Clark tested it with test client in this post). I will share some of the details before you invest time in code. Perhaps this could be implementation issue or issue in client. > > I am using pjsip as SIP client and it has a Turn-client module. As i explained in previous mail my desired network is... > > Turn Client <------------------>TCP Control Messages<--------------->Turnserver > Turn Client<-------------------->TCP Relay Data<-----------------------> TurnServer<-------------->UDP Relay to Peer<------------>UDP Based RTP Server > > I expect that STUN control requests will go to turnserver TCP port 5743 and turnserver will respond back with relay IP and port. I assumed it will provide us 1 TCP IP:port and 1 UDP IP:port where End peer will be informed with UDP IP:port so that it can send UDP data to turn server. While the TCP IP:port will be used by Turn client to relay RTP data over TCP to turnserver which in turn will relay to end RTP Server over UDP. > > No, TURN will allow you to allocate one IP:port (by allocate request of course) for the remote peer only. > > > But when I test, I see different flow .... > > 1- Client send Allocation requests on control socket 5743 (Allocation Request > STUN Allocate request > Hdr: length=128, magic=2112a442, tsx_id=000012442cd672ae00294825 > Attributes: > REQUESTED-TRANSPORT: length=4, value=285212672 (0x11000000) > SOFTWARE: length=12, value="pjnath-2.0.1" > USERNAME: length=5, value="Test" > REALM: length=10, value="domain.org" > NONCE: length=48, value="50b0e8610000000081e88b59fb4a98fb6595134f97372287" > MESSAGE-INTEGRITY: length=20, data=4f3282e29c6681f1a284d3bdb9e0b43cf86d8d65 > > 2- Receives two back to back Allocation success responses > --- begin STUN message --- > STUN Allocate success response > Hdr: length=84, magic=2112a442, tsx_id=000012442cd672ae00294825 > Attributes: > XOR-RELAYED-ADDRESS: length=8, IPv4 addr=31.193.168.4:21193 > LIFETIME: length=4, value=1800 (0x708) > XOR-MAPPED-ADDRESS: length=8, IPv4 addr=117.199.208.17:3971 > SOFTWARE: length=14, value="TurnServer 0.7" > MESSAGE-INTEGRITY: length=20, data=ff7ceb2f630845d012532703302e1eface20159e > FINGERPRINT: length=4, value=3828074744 (0xe42bc8f8) > --- end of STUN message --- > and > --- begin STUN message --- > STUN Allocate success response > Hdr: length=84, magic=2112a442, tsx_id=000012 |