Skip to content

Udp connection(Socket) not close #174

@shiqifeng2000

Description

@shiqifeng2000

hi

I am using this repo for a streamer case. The streamer client is a web browser with webrtc api. It was perfect except some memory issue. So when I dig further, i notice something, the host opens a new udp port whenever a new peer connection is created but failed to get closed when the client dropped.

/*Log start/
[Rolling] 2022-03-28T16:57:37.824594+08:00 - WARN - webrtc_ice::agent::agent_internal - [controlled]: Failed to close candidate udp4 prflx 192.168.0.100:63937 related :0: the agent is closed
[Rolling] 2022-03-28T16:57:37.824713+08:00 - INFO - webrtc_ice::agent::agent_internal - [controlled]: Setting new connection state: Failed
[Rolling] 2022-03-28T16:57:37.825166+08:00 - INFO - webrtc::peer_connection - ICE connection state changed: failed
[Rolling] 2022-03-28T16:57:37.825233+08:00 - INFO - vccplayer::player - Connection State has changed failed
[Rolling] 2022-03-28T16:57:37.825279+08:00 - INFO - webrtc::peer_connection - peer connection state changed: failed
[Rolling] 2022-03-28T16:57:37.825323+08:00 - INFO - vccplayer::player - Peer Connection State has changed: failed
/*Log end/

I googled the Go version of Pion, something like pion/webrtc#629, and try to close the peer. But i got no luck. Since I am not in a cluster mode, single port mode is not possible.

So what can I do to get rid of it, maybe add a timeout feature to the udp connections?

Screen Shot 2022-03-28 at 2 09 07 PM

Screen Shot 2022-03-28 at 2 08 42 PM

Screen Shot 2022-03-28 at 2 08 07 PM

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions