I'm writing a kernel module about network, in which I need to traverse all ``ESTABLISHED'' TCP connections, and get ``struct sock'' of those matching specific (local IPv6, peer IPv6).

Please tell me which kernel data structures and/or functions should I refer to?