Skip to content

Tunnel client socket stays in ESATBLISHED state on removing/deleting target #146

@Shikha-Chowdhary

Description

@Shikha-Chowdhary

I am using C++ client (my network element) with gNMIC tunnel server

  • Subscription works, but I am unable to close client socket when deleting/removing target at my network element.
  • Is there any specific sequence which one need to follow while deleting/removing target from tunnel client?
  • GNMIC traces show that client has been closed, but the client socket remains in ESTABLISHED state

} ] } 2023/06/12 10:54:25.790673 /home/runner/go/pkg/mod/google.golang.org/grpc@v1.54.0/grpclog/logger.go:53: [gnmic] [transport] transport: closing: connection error: desc = "error reading from server: EOF" 2023/06/12 10:54:25.790737 /home/runner/go/pkg/mod/google.golang.org/grpc@v1.54.0/grpclog/logger.go:53: [gnmic] [core] [Channel #8 SubChannel #9] Subchannel Connectivity change to IDLE 2023/06/12 10:54:25.790807 /home/runner/go/pkg/mod/google.golang.org/grpc@v1.54.0/grpclog/logger.go:53: [gnmic] [core] pickfirstBalancer: UpdateSubConnState: 0xc000c20300, {IDLE } 2023/06/12 10:54:25.790851 /home/runner/go/pkg/mod/google.golang.org/grpc@v1.54.0/grpclog/logger.go:53: [gnmic] [core] [Channel #8] Channel Connectivity change to IDLE 2023/06/12 10:54:25.790847 /home/runner/work/gnmic/gnmic/app/collector.go:111: [gnmic] target "OME-000102031000": subscription default-1686576182 rcv error: rpc error: code = Unavailable desc = error reading from server: EOF 2023/06/12 10:54:25.790881 /home/runner/work/gnmic/gnmic/app/collector.go:111: [gnmic] target "OME-000102031000": subscription default-1686576182 rcv error: retrying in 10s 2023/06/12 10:54:25.790861 /home/runner/go/pkg/mod/google.golang.org/grpc@v1.54.0/grpclog/logger.go:53: [gnmic] [transport] transport: loopyWriter exiting with error: transport closed by client 2023/06/12 10:54:30.846313 /home/runner/work/gnmic/gnmic/app/tunnel.go:169: [gnmic] tunnel server target {ID:OME-000102031000 Type:GNMI_GNOI} deregister request client 192.168.0.16:53564 is not in subsc1aq1qription list

  • Tunnel client netstat, socket remains in ESTABLISHED state only
    TCP 0 0 ::ffff:192.168.0.16.56027 ::ffff:10.179.193.207.50051 ESTABLISHED
    TCP 0 0 ::ffff:192.168.0.16.53564 ::ffff:10.179.193.207.50051 ESTABLISHED

  • Whereas on Ctrl-C at GNMIC, the tunnel client socket goes to CLOSE_WAIT state forever.

  • Also, is there any minimum gRPC stack and gnmi.proto version which is needed for tunnel.proto to work ? Here are the version details
    1)gRPC stack : 1.0.0
    2)gnmi.proto : 0.7.0
    3)tunnel.proto : 0.1
    4)GNMIC : 0.31.0

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